Historial de ventas

Necesito resolver un problemita con access. Tengo hecho un programa para facturación, que tiene tablas con clientes, artículos y demás.
El programa ya funciona correctamente, pero lo que quiero corregir es lo siguiente: para llenar los campos de una nueva factura lo que hago es poner solo el código de articulo y la descripción y el precio aparecen automáticamente. Hasta aquí todo marcha ok, pero cuando, por ejemplo quiero modificar un precio, lo que busco es que ese precio se aplique a las próximas facturas, SIN MODIFICAR LAS QUE YA FUERON EMITIDAS. No se si me explico, quiero tener un historial de ventas VERDADERO, donde pueda consultar las facturas ya emitidas tal cual fueron impresas. ¿Hay alguna manera de "congelar" los datos antiguos?
Desdá ya muchas gracias, y valoraré mucho tu respuesta, que mucha falta me hace.

7 respuestas

Respuesta
1
¿Tienes una tabla DETALLEDEVETAS?
Si es así solo tienes que añadir o tener el campo de PRECIO_UNITARIO, si ya lo manejas, entonces no tienes problema, tu precio no tiene porque modificarse. Si solo lo usas como informativo y para calcular, entonces si debes añadir este campo, con ello evitas que el precio al tener un cambio te haga modificaciones a este. Ojala me haya explicado.
¿Cómo tienes tu modelo de base de datos?
Quise decir, ¿cómo tienes tus tablas?
Respuesta
1
Argon01: mira si he entendido correctamente tu problema ya se en que en la tabla de facturas no guardas el importe sino que lo obtienes a partir de la relación con el articulo y por eso cada vez que modifiques los precios vas a modificar el importe de la factura generada.
La solución, seguro, la la pensaste y consiste en guardar tanto el código del articulo como el importe de la venta, entre otras cosas en la tabla hija do de detalle de la factura, así como en la tabla cabecera de la factura debes guardar el total neto, el bruto y los diferentes impuestos o retenciones que tengas, así como los datos del cliente, la considion impositiva de este al momento de la factura, la fecha y las condiciones de la venta en gral. Esto es así, aunque parezca redundante, ya que es muy importante la información al momento de la venta.-
Seguramente tendrás que cambias algo en tu sistema pero vale el esfuerzo.-
Si tienes dudas de como modificar no dudes en consultar.-
Respuesta
1
Claro que si, asumo que estas utilizando una relación de tablas, no adecuadas, en realidad para manejar un historial no es tan sencillo, es algo complicado y seria difícil que llegaras a entendeme, ahora no cuento con mucho tiempo, pero si deseas puedes enviarme tu BD para analizarla y dar un tip de historial para a partir de ahí puedas implementarlo, mi mail es [email protected], si lo envías que tenga formato zip
Respuesta
1
Tendrás que tener una tabla anexa del detalle de la factura en donde colocas el código del artículo y su precio en la fecha que procesas la factura, en la tabla de artículos tienes el último precio de venta, en el detalle, los precios de ese artículo.
Otra forma sería que tengas una especie de tabla histórica de precios de artículos.
Respuesta
1
Tendrías que especificarme un poco más las tablas que tienes y sus relaciones. Imagino que tendrás una tabla con artículos cada uno con su precio y una tabla de facturas donde almacenas la factura con los artículos que van en ella. Para saber el precio del artículo en esa factura deberás almacenar ademas del artículo, el precio, así cuando modifiques el precio en la tabla artículos, no se cambiará en la de facturas.
Respuesta
1
Ese es el viajo problema de los programas de facturación. Siempre se debe guardar el precio al cual fue facturado un articulo en la linea de detalle de la factura. Deberás añadir ese campo a tu tabla.
Respuesta
1
Lo que debes de hacer es tener una tabla con todo el movimiento y otra donde almacenas los artículos con su precio.
Al momento de hacer una factura, se debe guardar en la tabla de movimiento, el num de factura y el precio del articulo con eso si después deseas cambiar el precio al articulo, lo cambias es en la tabla de artículos y no en la de movimiento.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas