Autor Tema: Modelo Relacional Ayuda  (Leído 2587 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado djinvacion

  • The newbie
  • *
  • Mensajes: 3
Modelo Relacional Ayuda
« : julio 30, 2014, 06:52:12 pm »
Buenas tardes nuevamente solicitando su asesoria con la siguiente duda:

Estoy desarrollando un sistema para el control de inventarios y ventas, bien la duda que tengo es con respecto a los numero de serie de los producto (cuando estos lo tienen) tengo entendido que un producto con su modelo y numero de serie es mas facil controlar el tema de reclamo de garantia, la empresa para la que estoy trabajando quiere controlar las fechas de vencimiento y con ello cuando un cliente reclame su garantia podran saber si es aplicable o no. Bueno este es parte de mi diagrama relacional


El proceso para agregar y descargar las series de los productos a mi criterio es esta:

1. Al realizar la compra en el momento que digite el código del producto se verifica si este (tipo de producto) es serializado entonces habilito el panel para ingresar el numero de serie, PERO aqui mi dilema que pasa si la empresa compra 10 productos tendría que ingresar las 10 serie una a una, pero en mi entidad relacional tengo la tabla compras con el cod_compra(pk) y en el detalle de compra cod_compra(pk) y cod_producto(pk) llave compuesta con esto no es posible agregar el mismo producto dos veces. El mismo proceso es para la venta.

No he visto ningún ejemplo de base de datos en donde en el detalle no este una llave compuesta por la compra y el producto, en los supermercados grandes como pricemart que si lo hacen, yo no he encontrado como.


Si me pudieran orientar como resolverlo pues si lo dejo asi para ingresar uno por uno.

Gracias de antemano.
« Última Modificación: julio 30, 2014, 06:53:45 pm por djinvacion »

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14581
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Modelo Relacional Ayuda
« Respuesta #1 : julio 31, 2014, 11:26:38 am »
tu problema es que estas considerando que un producto equivale a una venta, lo cual no siempre es asi. tenes que considerar un conjunto de productos de uno o MAS como una venta.

crea una tabla de venta grupal o bundle y usa esa en lugar de la venta unitaria, la venta unitaria tendria que estar relacionada al resto de tu base de datos a travez de la tabla de bundles.

basicamente la tabla de bundles tendira TODOS los datos comunes a los grupos de articulos que estas vendiendo y la unitaria tendria el detalle particular de cada producto.

pd. tambien te hace falta una columna de "cantidad" de compra para cada producto. si haces la tabla de bundle, podes asociar el paso ese de registro a la tabla de bundle.
« Última Modificación: julio 31, 2014, 11:29:55 am por g00mba »

Desconectado djinvacion

  • The newbie
  • *
  • Mensajes: 3
Re:Modelo Relacional Ayuda
« Respuesta #2 : julio 31, 2014, 06:30:14 pm »
Gracias por respoder, me puedes orientar con el concepto Bundle o grupal estoy buscando en internet pero no encuentro nada aún o estoy búscando mal.

Igual siguo buscando y ahora mismo estoy en codeproject.

gracias nuevamente.

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14581
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Modelo Relacional Ayuda
« Respuesta #3 : agosto 01, 2014, 09:18:18 am »
tenes que crear una tabla que tenga basicamente la lista de transacciones (compras en caja) y esa lista tiene que tener una llave foranea de uno a varios con una tabla que te lleve cada uno de los articulos comprados esa tabla es la de bundle, esa tabla tiene que tener el numero de serie, una llave foranea FKid_articulo de varios a uno a tu catalogo de articulos y como ya explique antes, otra que te lo relacione a tu tabla bundle.

En modo mas sencillo, tenes que asociar tu modelo a una tabla que te lleve la lista de bundles generados y otra tabla que te lleve el detalle de que items estan en cada bundle.

Desconectado Golden.

  • Sv Jr.
  • **
  • Mensajes: 51
  • Un tipo complejo que pinta las cosas simples...
Re:Modelo Relacional Ayuda
« Respuesta #4 : septiembre 13, 2014, 04:30:54 pm »
tenes que crear una tabla que tenga basicamente la lista de transacciones (compras en caja) y esa lista tiene que tener una llave foranea de uno a varios con una tabla que te lleve cada uno de los articulos comprados esa tabla es la de bundle, esa tabla tiene que tener el numero de serie, una llave foranea FKid_articulo de varios a uno a tu catalogo de articulos y como ya explique antes, otra que te lo relacione a tu tabla bundle.

En modo mas sencillo, tenes que asociar tu modelo a una tabla que te lleve la lista de bundles generados y otra tabla que te lleve el detalle de que items estan en cada bundle.

Un mes tarde, pero por cultura general...

La forma mas sencilla de entender lo que te dice g00mba, es ver la base de ejemplo que viene con SQL - Northwinds si no me equivoco, el proceso o la idea bajo el concepto es sencilla, donde tu tabla que tenes actualmente se parte o fracciona.

1- Tabla de transacciones. (almacena cosas basicas de la factura, fecha de creacion, entrega, cliente que la lleva u ordena, un # de factura, etc)
2- Tabla detalle de transacciones. (almacenas repetidamente el # de factura generado en la tabla 'transacciones' y repetis cuantos articulos lleve en la orden).

De esta manera te queda algo asi:

Orden #2094 (con sus detalles en la talba transacciones)

Lleva los siguientes articulos:

Item #1 (pertenece a la orden #2094)
Item #2 (pertenece a la orden #2094)
Item #3 (pertenece a la orden #2094)

etc...
Mi meta detallar las ironias de la vida como aquel que usa rolex y no tiene tiempo para su familia...