Access sumar cantidades en formulario

Hola sebas otra vez yo :D
Como hago para sumar dos campos que tengo en el formulario productos tiene estos nombres
cantidad comprada (Nombre de comando cantidadC)
Cantidad restante (nombre de camando cantidad)
Cantidad comprada, es el valor que se debe sumar en cantidad restante
pero cantidad restante, es el destino de unos códigos, los cuales muestran el resultado actual que tiene el campo
como los podría sumar, te muestro una imagne del formulario
muchas gracias de antemano, se que sos un crack :D yo pa los código no me allo, los entiendo y los se usar, más no los se redactar

1 Respuesta

Respuesta
1
En un cuadro de texto, en origen del registro pondrías:
=Form!CantidadC.Value+Form!Cantidad.Value
Siendo CantidadC y Cantidad los nombres de los cuadros de texto del formulario.
Gracias, el código funciona perfecto en otro cuadro de texto
pero hay forma de que la suma se efectúe en el campo cantidad restante, que lo actualize
es que de este campo, también se resta con otro formulario y se actualiza constantemente
ya que de aquí salen y entran cantidades conforme la entrada os salida este actualizado para para la próxima entrada o salida
ejemplo:
Tengo 100 productos vendí 10 me quedan 90 luego compre 20 del mismo producto que coja estos 90 y le sume los 20 es 110 luego vendí 60 y que coja 110 y le reste 60 y me quede 50
Perdona, pero no me entero...
:D
Tengo un formulario llamado ventas
Tengo un formulario llamado productos
Ventas tiene el siguiente campo:
Cantidad Vendida - la cantidad de este campo es la que resta a la base y lo actualize
Productos tiene los siguientes campos:
Cantidad Restante - la cantidad de este campo es la base
Cantidad Comprada - la cantidad de este campo es la que suma a la base y lo actualize
claro esta que estas operaciones sean del mismo producto, la resta la tengo al mismo producto con este código que tu me distes
DoCmd.RunSQL "Update Productos Set Cantidad=Cantidad-" & Form!Cantidad.Value & " where Producto='" & Form!Producto.Value & "'"
Osea que de el campo cantidad restante se basan los otros dos campos y este campo se cambia constantemente
digamos:
Cantidad restante = 100
vendi 5 productos
Cantidad Vendida = 5 al poner este 5 me los reste de cantidad restante = 95
Ahora
Cantidad Restante = 95
luego compre 2 productos
Cantidad Comprada = 2 al poner este 2 me los sume de cantidad restante = 97
Ahora
Cantidad Restante = 97
El lunes lo miro, me voy de fin de semana.
Hasta el lunes, Angeles
Je je muchas muchas gracias :D :D si, a descansar el finde
Creo que lo que tienes que actualizar es el campo CantidadRestante de la tabla Productos.
En el formulario Ventas, supongamos que el cuadro de texto dónde introduces la cantidad se llama CantidadVendida, entonces la sql sería:
DoCmd.RunSQL "Update Productos Set CantidadRestante=CantidadRestante-" & Form!CantidadVendida.Value & " where Producto='" & Form!Producto.Value & "'"
En el formulario Productos, si el cuadro de texto se llama CantidadComprada:
DoCmd.RunSQL "Update Productos Set CantidadRestante=CantidadRestante+" & Form!CantidadComprada.Value & " where Producto='" & Form!Producto.Value & "'"
Perfecto funciona perfecto, cuando le doy guardar me manda un mensaje diciendo que is quiero realizar los cambios en el campo, seria posible automatizar ese mensaje,
ah y otra cosa je je, yo si pregunto mucho
esta es un poquito difícil de explicar
en el campo cantidad restantes tengo 0
en el campo cantidad comprada puse 50 y lo guarde
y el campo cantidad restante cambio a 50
digamos que hubo un error en la redacción del formulario compras y no era 50 sino 10
lo que quiero saber es que al reducir o al aumentar el valor guardado, de un registro ya redactado el cambio sea congruente
en estos momentos si cambiara ese valor de 50 por el 10 y lo volviera a guardar el campo restate aumentaría a 60 más no lo deja en el valor correspondiente que vendría siendo, claro esta editando un registro ya guardado. ¿Seria posible hacer esto?
Muchísimas gracias de ante mano, :D 5 stars
Para lo de los mensajes, tienes 2 opciones:
1º. En Herramientas ---> Opciones ---> Modificar/Buscar ---> En confirmar chequeas o descheas lo que quieras que te avise y lo que no. Tienes que tener en cuenta que si utilizas esta opción será para TODO el access, es decir para TODAS las Bases de Datos que tengas.
2ª. Método DoCmd. SetWarnings activa y desactiva TODOS los mensajes:
DoCmd.SetWarnings False ' Desactiva los mensajes
<el código que tengas>
DoCmd.SetWarnings True  ' Vuelve a activar los mensajes
Para la 2ª cuestión, tendrías que editar el registro o si te das cuenta de has metido 50 equivocadamente ¿por qué no meter -50?
Me cuentas.
Otra vez,
Se me olvidaba, estoy haciendo una página en la que intento contestar a las preguntas más frecuentes que veo en los foros. Estoy empezando y no tengo casi nada, pero si tienes un rato me gustaría que te pasases por ella y me dieses tú opinión. No se... si es clara, si está más o menos bien explicado... en fin, resumiendo, si puede servir para algo.
http://angelessebas.es/
He estado pensando en lo de las cantidades y si bien me parece buena idea la de actualizar el campo cada vez que haya un movimiento yo tendría además un histórico de movimientos. Es decir una tabla, que llamaría Movimientos, con los campos Fecha, Producto, Compras, Ventas e insertaría un registro cada vez que se realizara un movimiento. Te lo digo porque si te das cuenta que la cantidad no es la correcta, bien lo modificas, pero ... ¿si no te das cuenta? Creo que es conveniente tener una tabla para poder comprobar los movimientos.
Después del Update pondrías:
En el formulario de Ventas:
DoCmd.RunSql "Insert Into Movimientos (Fecha, Producto, Compras, Ventas) Values (Date(), '" & Form!Producto.Value & "'", 0, " & Form!CantidadVendida.Value & ")"
En el de Compras:
DoCmd.RunSql "Insert Into Movimientos (Fecha, Producto, Compras, Ventas) Values (Date(), '" & Form!Producto.Value & "'", " & Form!CantidadComprada.Value & ", 0)"
Muchas gracias sebas sos el mejor, gracias por dedicarle tiempo, la página ami me párese muy bn, despeja muchas dudas que tenemos frecuente mente, claro esta, la infindad de preguntas que se le ocurren a uno son muchas jejejeje pero esta muy buena

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas