Hola
estoy realizando un sistema de faturacion que maneja ventas al credito
y ventas al contado..cuando la venta es al credito esta se pasa a una
tarjeta kardex de credito ....ayuda no se como hacerlo ya tengo lo de
facturacion al credito y me rebaja de stock pero esto del kardex
credito no se como hacerlo si me pueden dar un ejmplo de una base de
datos se los agradeceria mi correo es gesjosecasr@yahoo.es y yo les
mando lo que tengo para que me ayuden yo les mando mi base de datos y
le explico mejor....por favor echenme una manito.. aqui le dejo la
imagen del kardex http://www.imaxenes.com/imagen/kardex1me150o.jpg.html
CambiadoEnrique M. Montejodomingo, 15 de mayo de 2011 10:09 (De:Lenguaje VB.NET)
Por lo que veo ya tienes avanzado el desarrollo y tienes un diseño de base de datos.
Tambien puedo ver que el registro de la targeta kardex no pare muy
complejo, a ver me imagino que en tu diseño tendras una tabla que
representara al "Cliente", o sea la tipica tabla que continee sus
datos, nombre, numero de documento, direccion, telefono, esos datos
simples.
Bueno para poder registrar esta tarjeta simplemente deberias añadir una nueva tabla que se asocie a la del cliente.
Me imagino ademas que tendras una tabla de Facturas.
Podrias armar la tabla para el registro kardex, como esto:
VentaCredito
-----------------
idCredito PK
idCliente FK
VentaCreditoDetalle
--------------------------
idCredito PK
idCreditoDetalle PK
idFactura FK
Fecha
Credito
Abono
Saldo
PK = Primary key
FK = Foreing key
Como habras observado la primer tabla solo define la cabecera de la
venta a credito, o sea de tu kardex, y se relaciona con el cliente para
poder armar el encabezado de la misma.
La segunda es el detalle, esta se una a la anterior por medio del
idCredito, y tiene una adicional idCreditoDetalle, el cual es un campo
secuencial que incrementa por cada linea que se agrega.
Aqui tienes dos alternativas de diseño, o usas una clave compuesta
entre idCredito y idCreditoDetalle, o puedes usar solo una en este caso
idCreditoDetalle.
La diferencia es basicamente que con clave compuesta deberias
incrementar idCreditoDetalle en base a idCredito, en la otra es un
campos secuencia creciente, o sea podria ser del tipo identity en tu db.
Un ejemplo de datos de carga para que veas la diferencia entre claves compuestas y simpes:
Por lo general si utilizas algun sistema de ORM, se tiene a utilizar claves simples, asi todo es mas sencillo.
Lo que no llegue a entender del todo es si un credito es por factura, o no.
Segun veo pareciera que se puede hacer en multiples facturas, o al
menos la tarjeta no lo restringe, pero es raro, me imaginaba que el
credito se le otorgaba al cliente, o sea no se aplicaba a una factura
determinada, a ver si me explico, el cliente x tiene un credito de x
plata, a medida que va pagando se el va descontando de este.
O al menos con los creditos bancarios es de esta forma, el banco da un
credito, o sea me asigna el dinero, o sea con eso el podria saldar sus
facturas, con lo que la facturacion ya estaria paga, luego el cliente
lo que paga en cuotas es el credito, pero que sepa esta ya no esta
asociado a una factura.
Por ahi el campo Saldo tampoco deberia ir en el diseño ya que por las
3FN (las tres formas normales) de diseño de una db este seria un campo
calculado, pero bueno a veces es necesario que este para evitar
realizar tanto procesamiento en el calculo y ser un poco mas rapido.
Por ahi el nombre de la tabla podria cambiar si quieres.
Bueno espero esto te de una pista de como diseñar la base.
Saludos Leandro Tuttini