Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Bases de datos > Tablas planas
Register FAQ Members List Calendar Guía de estilo Search Today's Posts Mark Forums Read

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 23/07/2003
hgiacobone's Avatar
hgiacobone hgiacobone is offline
Miembro
 
Join Date: May 2003
Location: La Plata, Bs. As., Argentina
Posts: 165
Poder: 24
hgiacobone Va por buen camino
Question Master/Detail/Detail/Detail/etc...

Hola amigos...
Estoy en una encrucijada con las relaciones. Es un caso tonto, pero no lo puedo resolver.
Tengo que hacer una relacion Master/Detail pero la propiedad MasterSource-Detail solo me permite hacerlo uno a uno y yo necesito UNO A VARIOS.

Las tablas son:
ALQUILER
CLIENTES
PELICULA1
PELICULA2
DET1
DET2
Tengo una tabla (ALQUILER) que contiene un detalle de casetes de peliculas en alquiler. Este almacena el ID del cliente (CLIENTES)y de la pelicula en cuestion (PELICULA1).

A su vez, la tabla PELICULA1 debería estar relacionada con PELICULA2 que es donde existen los detalles y las tablas DET1, DET2, etc. que contienen otro grupo de detalles como el formato o la editora.

Cuando agrego a ALQUILERES una pelicula, con su ID debo obtener los detalles de las tablas PELICULA2;DET1;DET2 entre otras y almacenar sus respectivos códigos en la tabla de alquileres.


Veamos si puedo hacer un gráfico:

PELICULA1__----> ALQUILER <----__CLIENTES
| |
| |
PELICULA2 |
DET1
DET2


Espero se entienda el problema.
__________________
Gracias de antemano por vuestra ayuda.
·.:*:.·Yako·.:*:.·
Reply With Quote
  #2  
Old 23/07/2003
jachguate's Avatar
jachguate jachguate is offline
Miembro
 
Join Date: May 2003
Location: Guatemala
Posts: 6,254
Poder: 30
jachguate Va por buen camino
No se si entendí bien tu pregunta.

Supondre que la tabla Alquileres es el master, y de ella cuelgan Pelicula1 y Pelicula 2 y de esta última Det1 y Det2.

Ademas, que tenes datasources con el Nombre dsAlquiler y dsPelicula2.

Además, que el indice que usas en todas siempre tiene como primer segmento un campo llamado ID que es el correspondiente a la llave primaria de alquileres.

Las propiedades debieran ser:


Code:
Pelicula1
  MasterSource = dsAlquiler
  MasterFields = ID
end

Pelicula2
  MasterSource = dsAlquiler
  MasterFields = ID
end

Det1
  MasterSource = dsPelicula2
  MasterFields = ID;PELICULA
end

Det2
  MasterSource = dsPelicula2
  MasterFields = ID;PELICULA
end
Es probable que no se ajuste a tu estructura, pero te servirá para adaptarlo.

Como te daras cuenta, la relación maestro/detalle no se hace en el master, sino en el detalle. De esa forma un solo dataset puede servirte de master para muchos, muchos details.

Hasta luego

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Reply With Quote
  #3  
Old 24/07/2003
hgiacobone's Avatar
hgiacobone hgiacobone is offline
Miembro
 
Join Date: May 2003
Location: La Plata, Bs. As., Argentina
Posts: 165
Poder: 24
hgiacobone Va por buen camino
Lightbulb

Es que tal vez no lo explique bien.

La tabla ALQUILER almacena lo siguiente:
idClliente-idPelicula-Detalle-Formato-Precio

La tabla CLIENTES se conforma:
idCliente
Nombre
Direccion

La tabla PELICULA1 se conforma:
idPelicula
Titulo

La tabla PELICULA2 se conforma:
idPelicula
idFormato
idPrecio
Comentarios

La tabla FORMATO se conforma:
idFormato
TipoFormato

La tabla PRECIOS se conforma:
idPrecio
Monto1
Monto2

¿Cómo hago para mantener la relación al mismo tiempo entre la tabla CLIENTES y PRECIOS1 y que esta a su vez mantenga relaciones con FORMATO, PRECIOS y otras tantas?
__________________
Gracias de antemano por vuestra ayuda.
·.:*:.·Yako·.:*:.·

Last edited by hgiacobone : 24/07/2003 at 17:50.
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +2. The time now is 11:08.


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