Stock por bodegas y tipo variedad

Estoy haciendo una base de datos para una Almazara para llevar el stock de aceite en función de su variedad y la bodega, tengo las tablas variedad, bodegas y formularios de entrada y salida, pero no consigo realizar una consulta para que muestre el stock en función de la variedad y la bodega.

3 Respuestas

Respuesta

Prueba esta Aplicación access

https://planetaoffice.net/download/inventarios-cgi4/

Respuesta
1

Lo puedes hacer de 32456 formas distintas(no, no exagero, que exagerando...). No dices desde donde quieres verlo, si desde el mismo formulario que tienes, desde un formulario "principal", si en una consulta que sólo te muestre los "saldos finales" por bodega y variedad. Si quieres un formulario para entrada y otro para salida, si un único formulario, etc. Por ejemplo, supongamos que tienes una tabla Variedades

Otra Bodegas

y una tabla Movimientos (para un único formulario)

Con ella hago un formulario( te lo pongo continuo porque se ve mejor) y a medida que voy metiendo datos me va calculando la cantidad de aceite por bodega y variedad.

Por ejemplo, fíjate en la bodega norte y aceite de oliva. Los dos primeros se refieren a ella y más tarde el día 7 le entra otros 73, y como hasta ese momento había 50, te da su saldo nuevo 123.

El código del evento Después de actualizar del cuadro de texto Cantidad es

Private Sub Cantidad_AfterUpdate()
DoCmd.RunCommand acCmdSaveRecord
SaldoPorBodega = Nz(DSum("cantidad", "movimientos", "Movimiento=""Entrada"" and idbodega=" & Me.IdBodega & " and idvariedad=" & Me.IdVariedad & "")) - Nz(DSum("cantidad", "movimientos", "movimiento=""Salida"" and idbodega=" & Me.IdBodega & " and idvariedad=" & Me.IdVariedad & ""))
End Sub

Y a partir de aquí, es donde deberías decir, como quieres verlo, si en el mismo formulario o en otro, etc.

Gracias Icue, la idea en un principio del stock es verlo en un informe, lo que si necesito son dos formularios uno para entrada y otro para salida, igual no es lo ideal pero lo pide la empresa.

David, si quieres, repito, si quieres, ya que para mí me resulta más cómodo, mándame un mensaje (sólo el mensaje) a [email protected] y te mando un ejemplo completo con dos formularios. Si lo haces, en el asunto del mensaje pon tu alias David Gamero, ya que si no sé quien me escribe ni los abro.

Respuesta

La respuesta de Icue es acertada pero se debe validar que la Cantidad sea mayor que cero para evitar agregar un registro con cero movimiento y el mismo saldo, Es decir:

if Me.cantidad>0 then

 'Ejecutar el código

Else

  Msgbox "La cantidad debe ser mayor que cero",vbInformation,"STOCK"

End If

Otra recomendación procure no utilizar campos de texto para indicar el tipo de movimiento, es mejor campo numérico por ejemplo, 1= Entrada 2= Salida. Esto facilita mejor las consultas hace que sean más ágiles. En este caso el campo Movimiento solo tendría el valor 1 o 2.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas