Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Relacion Mestro-Detalle (https://www.clubdelphi.com/foros/showthread.php?t=10902)

silviodp 01-06-2004 14:28:40

Relacion Mestro-Detalle
 
Estoy desarrollando una aplicación en la que tengo una tabla de Consumos con los siguientes campos:
IDConsumo, Factn, Fecha, Seccion, Vehículo, Observación.

Y tengo otra tabla DetProducto, en la que cargo los distintos productos que que puede tener un consumo, luego un Consumo puede tener varios Productos cargados. Por esto quiero relacionar las tablas mediante Maestro-Detalle, para que cuando me muevo por la tabla Consumos, me muestre los productos que éste tiene cargado.
Los campos de la tabla DetProducto son los siguientes:

IDDetal, Consumo, Producto, Cantidad, Precio, Iva, Total

Y la relación Maestro-Detalle la hago mediante los campos IDConsumo y Consumo de respectivas tablas, el tema esta en que cuando quiero cargar un Producto en la tabla DetProducto me da error “Key violation”, y supongo que es porque al ser Consumo un índice primario éste se estaría repitiendo ya que puede haber varios productos para un mismo consumo.
Pero si yo pongo cualquier otro indice primario en DetProducto, no me deja relacionar en el Diseñador de Mod. de Datos los campos que yo quiero es decir en la ventana de establecer la relación sólo me aparece el campo que yo establecí como índice primario.

Como se puede arreglar para que esto funcione, o de lo contrario de que otra forma se puede hacer lo que quiero?

Estoy trabajando en Delphi 5, con tablas Paradox 7.
Gracias, saludos.-

Silvio.-

__cadetill 01-06-2004 14:57:32

Si es una relación estilo cabeceraFacturas/detalleFacturas, la tabla detalle la tienes mal definida. Tendría que ser algo así:

Consumo, IDDetal, Producto, Cantidad, Precio, Iva, Total

Primero has de poner el índice primario de la tabla maestra y luego el "contador" de la tabla detalle siendo todos estos campos clave (o sea, lo que está en negrita).

Ahora no has de tenir ningún problema para hacer la relación master / detail

Espero te sirva

silviodp 01-06-2004 15:20:00

Relacion Maestro-detalle
 
Gracias, Cadetill, lo voy aprobar. Sí es algo asi como el detalle de una factura.-
Saludos.

Silvio.-


La franja horaria es GMT +2. Ahora son las 12:04:06.

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