Delphi 2007 - Maestro detalle TIBDataSet+TDataSetProvider+TClientDataSet
Hola, amigos del foro:
Busco la corrección a un problema que no he podido solucionar de ninguna manera.
Tengo una aplicación en Delphi 5, y en ella manejo una relación maestro detalle con componentes IBExpress, para acceso a FireBird 2.1, así
DtsMaestro --> TIBDataSet
PrvMaestro --> TDataSetProvider
CdsMaestro --> TClientDataSet
DscMaestro --> TDataSource
DtsDetalle --> TIBDataSet
PrvDetalle --> TDataSetProvider
CdsDetalle --> TClientDataSet
DtsMaestro.SELECTSql.Text:= 'SELECT * FROM DOCUMENTOS'
DtsDetalle.SELECTSql.Text:= 'SELECT * FROM DOCUMENTOSDETALLE'
En tiempo de diseño, establezco la relación maestro-detalle sobre los componentes TClientDataSet, de la siguiente manera:
CdsDetalle.MasterSource = DscMaestro
CdsDetalle.MasterFields = 'Indice' (que es el campo llave primaria en la tabla DOCUMENTOS)
CdsDetalle.IndexFieldNames = 'DocumentoIndice' (campo que liga con la llave primaria 'Indice' del maestro)
... y todo funciona correctamente.
El inconveniente se presenta ahora, que he actualizado a Delphi 2007: cuando intento abrir el CdsDetalle, me arroja el error 'Field "DOCUMENTOINDICE" not found, aún cuando todo está bien parametrizado.
Haciendo otras pruebas, he notado que tengo este problema, sólo cuando utilizo TIBDataSet, porque si uso, por ejemplo TIBTable, funciona perfecto.
¿Cómo soluciono esto? ¿Existen problemas con el componente TIBDataSet incluido en Delphi 2007?
Agradezco a quien me pueda colaborar.
|