Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problema tabla Maestro-detalle en la q la pk de t.detalle formad por 2cods de la maes (https://www.clubdelphi.com/foros/showthread.php?t=28960)

akinom38 09-01-2006 12:27:22

Problema tabla Maestro-detalle en la q la pk de t.detalle formad por 2cods de la maes
 
Hola, buenos días!
Soy principiante en Delphi y no sé como arreglar la siguiente situación:
Tengo una tabla Productos y otra ProductosInsumos.
Tabla Productos
codigoProducto
descripcion
precio
Tabla ProductosInsumos
codigoProducto1 (fk)
codigoProducto2 (fk)
cantidad
Las he relacionado como Maestro-detalle.
Entonces, he creado un formulario en el que para un determinado producto, se pueden introducir los diferentes productos de los que está compuesto. Para ello, tengo un DbGrid asociado a un dataSet que está asociado a la tabla ProductosInsumos. La columna de CodigoProducto2 es de tipo CbElipsis y así muestro en otra pantalla todos los posibles productos que se pueden elegir. Mi problema es que, al elegir el producto, pues también cambia el registro activo del producto maestro.
Había pensado en crear dos diferentes DataSet-s asociados a la misma tabla Productos (uno para los productos 'maestro' y otros para los productos de los que se compone, pero no funciona. Alguien tiene alguna idea de cómo resolver este problema?
Muchas gracias por adelantado

Fita 09-11-2007 19:27:44

Hola...

No se que base de datos utilizas, pero a mi parecer no incluiria los dos codigos de producto en la misma clave del indice.
Si entendi bien, tienes un producto que se compone de varios otros; la tabla detalle debería tener como clave el codigo de producto de la tabla maestro, de manera que tendras tantas veces repetido el codigo maestro como productos (registros) lo compongan. En el dbGrid de detalle muestras todos los campos que necesites menos el codigo maestro (ya lo estas mostrando en el otro dbGrid)

Espero haber entendido tu problema y haber podido darte una pista
saludos


La franja horaria es GMT +2. Ahora son las 13:58:28.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi