![]() |
Master/Detail con IBDataSet
Alguien puede darme una idea de como hacer un master/detail entre dos tablas con las IBDataset? de antemano gracias..
|
Tienes que hacerlo como si de 2 Querys se trataran, es decir, con parametros en las sentencias SQL. Es decir, a la propiedad Datasource del detalle le indicas el TDataSource del maestro y, luego en el SelectSQL, si por ejemplo se relacionan por el campo ID del maestro y ID_Fac del detalle, pones algo como
Código:
select * |
No me sirve pq cuando le pongo:
Select * From LIBROS Where LIBROS.NOMB = AUTORES.NOMB me dice q "unknown column AUTORES.NOMB" Si le pongo: select NB_PAGES, TITLE, NOMB from LIBROS L, AUTORES A where L.NOMB=A.NOMB cuando navego no ajusta el nombre del autor con sus libros o sea no hay filtro de la tabla detalle para q muestre solo los libros pertenecientes a este autor, El datasource del IBDataSet detalle esta ligado con la misma y con el DataSource del IBDtatSet maestro como me has sugerido. Espero solucionarlo si me das mas ideas, asias.. |
Cita:
Código:
Select * From LIBROS Where NOMB = :NOMB |
Funciono, muchas gracias, la verdad me tiene perdido un poco lo del IBDataSet.
Una ultima, supongo q para hacer añadir automaticamente el ID correspondiente en el detalle hay q recurrir al evento onAfterInsert, y tb para modify y delete, o existe alguna manera de q se haga sin escribir codigo como pasa con el IBTable??? |
que yo recuerdo, sí, tienes que hacerlo por codigo.
Los modify y deletes, te recomiendo que definas una relacion de integridad en cascada directamente en la BD, asi te ahorraras trabajo de programación |
| La franja horaria es GMT +2. Ahora son las 04:52:11. |
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