Modificación de una consulta en sus parámetros
PARA NECKKITO
Estuve viendo una aplicación de nombre StockConConsultas, una pregunta sobre esta, podrías dentro de tus posibilidades, corregirla en lo siguiente :
Producto id 1 entraron 50 patatas y prestas 5 a un lugar especifico Eje: almacen2 (5 patatas), en la consulta CCalculoStock baje la cantidad a 45 y después en una determinada fecha te regresan (3 patatas) la alamcen2 entonces tendrían que pasar a 48 y quedarin en el amacen2 (2 patatas)
En definitiva que el numero del stock reste cuando prestas y sume cuando te regresan el mismo producto a un lugar por y en un fecha xx
1 respuesta
Con el perminso de Neckkito Nck, te comento que al ejemplo no le hay que modificar nada. Me explico:
Cuando prestas 5 uds a un almacén2, sucursal..., lo que realmente haces es una salida del almacén "principal", que como tal, la debes registrar en la tabla Tsalidas. Y cuando el almacén2 te retorna las 3 unidades, lo que tienes es una entrada, y como tal la deberías registrar en TEntradas. De esta forma siempre tienes el stock de tu almacén principal.
Lo que sí podrías es añadir un campo a las tablas de entrada y salida, que fuera origen y destino, en donde registrarías si es una compra/venta o un movimiento interno entre almacenes de la empresa, por ejemplo...
Si así es como tu dices, lo que pasa es cuando te lo regresan y le das la entrada si tenis un stock de 10 y presta 3, y cuando te devuelven 3, ese 10 se pasa a 13 . y lo que yo necesito es que se quede con el numero 10
grc
Si tienes 10 y prestas 3, el stock te queda en 7 (tienes que registrar esa salida de 3 unidades), y cuando te las devuelven, al registrar la entrada, te queda en 10, que es lo que tienes...
Esa cantidad que te regresan la suma y pasa a 13, tienes la versión de la aplicación, de ser así si podes haceme un link, porque tal vez tenga una versión vieja
No tengo la BD, pero me imagino que te refieres a este ejemplo: http://siliconproject.com.ar/neckkito/index.php/component/content/article/87-ejemplos-explicados/ejemplos-de-consultas/109-calculo-stock-sin-vba
Si es así, funciona perfectamente el cálculo de stocks: tienes 10, salen 3, te devuelves las 3, y el stock sigue siendo 10.
El 13 que dices que te sale (imagino que en la consulta en el cmapo SumadeCantidadEntr), es la suma de todas las entradas que tienes (las 10 iniciales y las 3 que te devuelven), lo cual también es correcto, y además, necesario para poder calcular el stock.
No veo dónde está el problema.
Si la base es esa, en la consulta (CCalculoStock) hay un campo que se llama (suma de cantidades de entrada) y es hay donde me fijaba que sumaba las entrada si ves ese campo va en aumento cada vez que le das nuevamente entrada al mismo producto.lo mismo que el campo "salidas"
Ahora mirándola bien, y espero que sea ese mi erro, era mirar ese campo que va creciendo por eso fue la pregunta, pero mirando el campo stock veo ahora que siempre queda en 10 haciendo los movimientos correspondiente, de ser así gracias por abrirme los ojos y ver el error
Nuevamente gracias
Una pregunta más con el mismo tema
Porque al poner un campo fecha las cantidades del stock te dan negativo¡¿.
O como hacer aparecer el campo fecha en las consultas agrupadas y no te de error
https://www.dropbox.com/s/jiy460p8two0dw1/StockConConsultas%20v.1.mdb?dl=0
Podrías fijarte en esta version que corregí, porque al colocarle los campos nuevos como fecha, lugar etc los números pasan a dar negativos
Gracias
El problema está en cómo construye access (y SQL) las consultas. Cuando quieres calcular el stock de un producto a fecha de hoy, sumas todas sus entradas y le restas todas las salidas, que es lo que hace el ejemplo, devolviendo un registro por el total de cada entrada y producto y lo mismo con las salidas. En base a esos dos registros de las dos consultas, y con la tabla productos, creas la consulta Stock, que te devuelve el stock actual para cada producto. Fíjate que las relaciones van sólo por medio del campo IdProd.
Si añades un campo fecha a las consultas de totales, lo más que puedes hacer, es calcular el total de entradas/salidas por producto y fecha, y la consulta te devolverá tantos registros de cada productos como fechas tenga con movimientos.
El problema está en la consulta stock, pues, a menos que las fechas de entrada y salida sean las mismas, y puedas relacionar ambas tablas también por el campo fecha (cosa improbable), obtendrás para cada registro de la consulta entradas todos los registros de la consulta salidas. Por eso en tu bd, con 3 entradas y dos salidas te devuelve 6 registros la consulta stock (3*2=6) y te salen números negativos y el stock no da nada con sentido.
Si quieres calcular el stock entre fechas, tomo mejor como base el ejemplo Gestión de Almacén de Neckkito Nck, y en la primera consulta de entradas y salidas le añades los campos de fecha, poniendo criterios que te pidan la fecha inicial y final (mejor si los referencias a un formulario, para que no te los pida una vez por cada consulta), y ya está, calculas el stock sobre esas consultas filtradas por fecha, pero en ningún caso le debes añadir los campos de fecha a las consultas de totales ni a la de stock.
Intenta a ver si te sale, si no a la noche te preparo un ejemplo.
Seria genial tus ultimas líneas de contar con tiempo disponibles en tus tareas, repito seria genial si me podes enviar un ejemplo. Porque leí todo tus instrucciones hay lugares que me pierdo,
Desde ya mil gracias y espero de tu poder ayudarme tu ejemplo
Atentamente, saludos
Te iba a preparar un ejemplo, pero Neckkito ya tiene uno, así que a él te remito:
http://siliconproject.com.ar/neckkito/index.php/component/content/article/94-ejemplos-explicados/ejemplos-de-aplicaciones/126-gestion-almacen-adenda-2
Como veras con algnas de mis modificaciones, sigo con un problema
si te fijas el informe , veras que le doy salida a un mismo producto a dos lugares diferente y me tira dos lineas de informacion uno con un stock y el otro con algo diferente osea al primer lugar le mando 5 10-5=5 y el segundo lugar le mando de las 10 - 2 = 8.
entonces la pregunta es cual es el stock verdadera según el informe 5 o 8 no ninguno de los dos el stock verdadero seria 3 , porque le presta a un lugar 5 y al otro 2 osea tengo de las 10 , 7 son prestadas
lo ideal es tener las dos lineas pero con un solo resultado y que el filtrado sea por el producto y no la fecha porque al informe lo sacas en cualquier momento y no con una fecha precisa,
por otro lado no he probado darle la entrada nuevamente ,pero asume es que si lo haces (dar entrada) se van a disparar los numeros para cualquier lado
te adjunto el modelo modificado
https://www.dropbox.com/s/jiy460p8two0dw1/StockConConsultas%20v.1.mdb?dl=0
gracias
Me parece que el problema es que no entiendes el concepto de stock...
El stock es una cantidad que hay de un producto en un lugar en una fecha concreta. Para calcularlo es indiferente a donde van o de donde vienen los productos.
Por tanto, y por el mismo motivo que te explicaba que no puedes poner los campos de fecha para que te calcule el stock, tampoco puedes ponerle otros campos.
Por cierto, el ejemplo que mandaste, no debe ser el que querías mandar.
Si lo que quieres es tener el stock con cada movimiento que haces, sólo necesitas una tabla de movimientos, con los campos:
IdProducto, CantEntrada, CantSalida, Fecha, Stock y los que quieras añadir
Cantidad entrada la registraras con fecha + y cantidad salida con fecha -. El stock lo calculas en función del stock del registro anterior y del nuevo movimiento. En al web de Neckkito tienes los ejemplos Contador tipo Saldo (1 y 2) que te explican cómo hacerlo.
Igual esta es la solución que estás buscando: Crear un Kardex en Access 2010
- Compartir respuesta