Calcular stock

Ante que nada es la primera pregunta que formulo en esta muy buena página, y la verdad espero que me ayuden por favor. Desde ya muchas gracias a TodoExpertos.com.
Bueno, mi situación es la siguiente:
Tengo una BD que cree en Access 2003, con las Consultas, Formularios, Informes, Macros y Módulos. Entre las Tablas tengo a: Mercaderías, Compra, Sub_Compra, Venta, Sub_Venta. Las tablas Compra y Sub_Compra se relacionan por un campo en común llamado id_compra; las tablas Venta y Sub_Venta a su vez se relacionan por id_venta. Ahora las tablas Mercaderias, Sub_Compra y Sub_Venta se relacionan por cod_mercaderias. Para tener el stock de una mercadería, tuve que crear 2 consultas llamadas stocksumacompra que lo que hace es sumar la cantidad de compra de cada mercadería, y la otra stocksumaventa que suma la cantidad de venta por mercadería. Este método calcula el stock, lo hace bien, pero sucede lo siguiente: yo registro una nueva mercadería en Mercaderías, registro la cantidad de compra inicial en Compra, pero (OJO, MUCHO OJO) tengo que realizar obligatoriamente una venta inicial con cantidad 0 (cero) de la mercadería para que me realice el calculo y mostrármelo en otro formulario llamado ver stock general, si no hago la venta inicial con cantidad 0 (cero) no puedo ver el stock o sea la cantidad que compre inicialmente. Me comentaron que puedo usar un campo llamado stock en Mercaderías e ir actualizando el mismo automáticamente cuando se realiza la primera compra sin necesidad de realizar obligatoriamente la primera venta con cantidad 0 (cero) que no tiene mucho sentido al final de todo. Se lo agradeceré infinitamente si me lo explican como puedo hacerlo, y si me hacen llegar los códigos mucho mejor. A continuación los campos de las tablas:
Mercaderias: cod_mercaderias, mercaderias, precio_venta.
Compra: id_compra, fecha_compra, proveedor.
Sub_Compra: id_compra, cantidad, cod_mercaderias, precio_compra, importe.
Venta: id_venta, fecha_venta, cliente.
Sub_Venta: id_venta, cantidad, cod_mercaderias, precio_venta, importe.
Desde ya muchas gracias...
Hola, ante que nada es la primera pregunta que formulo en esta muy buena página, y la verdad espero que me ayuden por favor. Desde ya muchas gracias a TodoExpertos.com.
Bueno, mi situacion es la siguiente:
Tengo una BD que cree en Access 2003, con las Consultas, Formularios, Informes, Macros y Módulos. Entre las Tablas tengo a: Mercaderías, Compra, Sub_Compra, Venta, Sub_Venta. Las tablas Compra y Sub_Compra se relacionan por un campo en común llamado id_compra; las tablas Venta y Sub_Venta a su vez se relacionan por id_venta. Ahora las tablas Mercaderias, Sub_Compra y Sub_Venta se relacionan por cod_mercaderias. Para tener el stock de una mercadería, tuve que crear 2 consultas llamadas stocksumacompra que lo que hace es sumar la cantidad de compra de cada mercadería, y la otra stocksumaventa que suma la cantidad de venta por mercadería. Este método calcula el stock, lo hace bien, pero sucede lo siguiente: yo registro una nueva mercadería en Mercaderías, registro la cantidad de compra inicial en Compra, pero (OJO, MUCHO OJO) tengo que realizar obligatoriamente una venta inicial con cantidad 0 (cero) de la mercadería para que me realice el calculo y mostrármelo en otro formulario llamado ver stock general, si no hago la venta inicial con cantidad 0 (cero) no puedo ver el stock o sea la cantidad que compre inicialmente. Me comentaron que puedo usar un campo llamado stock en Mercaderías e ir actualizando el mismo automáticamente cuando se realiza la primera compra sin necesidad de realizar obligatoriamente la primera venta con cantidad 0 (cero) que no tiene mucho sentido al final de todo. Se lo agradeceré infinitamente si me lo explican como puedo hacerlo, y si me hacen llegar los códigos mucho mejor. A continuación los campos de las tablas:
Mercaderias: cod_mercaderias, mercaderias, precio_venta.
Compra: id_compra, fecha_compra, proveedor.
Sub_Compra: id_compra, cantidad, cod_mercaderias, precio_compra, importe.
Venta: id_venta, fecha_venta, cliente.
Sub_Venta: id_venta, cantidad, cod_mercaderias, precio_venta, importe.

2 Respuestas

Respuesta
1
Da la sensación de que tu problema está producido porque en las consultas creadas para realizar operaciones las relaciones son
[Incluir sólo filas donde los campos combinados de anbas tablas sean iguales], y si no hay un registro de venta no aparecen los datos.
Debes de situar la relación de la consulta en
[Incluir TODOS los registros de Mercaderias......]
En caso de no haber acertado, creo que lo mejor es que me pasaras la BD comprimida para que le echara un vistazo. (No tiene que llevar datos reales, ni todos los formularios. Solo donde tengas el problema)
Mi correo es [email protected]
Ya me comentarás.
Una aperta.
Respuesta
1
Así es, crea una nueva columna en la tabal de mercaderías que se llame stock o un nombre que tu entiendas, cuando hagas una compra le sumas la cantidad de la compra, y cunado vendas le restas a esta columna la cantidad de ela venta.
Ya agregue un campo a la Tabla Mercaderías, llamado stock. La Tabla Mercaderías queda así: cod_mercaderias, mercaderías, precio_venta, stock.
Ahora como sigo, que lineas de códigos introduzco y donde la codifico.
Haces una búsqueda en la tabla de mercaderías pro el código, si es una venta entonces actaulizas la tabla restándole la cantidad y si es una compra, actualizas la table y el campo sumándole la cantidad

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas