Maestro-Detalle usandoTIBQuery,ClientDataSet,DataSetProvider

Moderador: yalmar

Foro cerrado salvo peticion.

Maestro-Detalle usandoTIBQuery,ClientDataSet,DataSetProvider

Notapor YumKaaX » Jue Nov 23, 2006 12:39 pm

Tengo un problema, le he buscado como hacer una ventana maestro-detalle que pueda modificar tanto el maestro como el detalle, pero que no utilice TIBTable, sino TIBQuery en combinación de ClientDataSet y DataSetProvider.

Tengo un procedimiento Actualizar en el Grid maestro:

AnsiString lcString;
lcString=DataModule1->CuentasACCOUNT->GetAsString();
DataModule1->DetalleCuentas->Close();
DataModule1->DetalleCuentas->SQL->Clear();
DataModule1->DetalleCuentas->SQL->Add("Select * from GLDREGTD WHERE GLDREGTD.account='"+lcString+"'";
DataModule1->DetalleCuentas->Open();
DBGridDetalle->Refresh();

Si pudiese alguien nada mas decirme la estructura correcta de conexion entre los objetos TIBQuery, ClientDataSet y DataSetProvider, porque creo que alli tengo el problema, he depurado y el programa y SQL cambia adecuadamente su contenido segun lcString. Pues me aparecen los 2 Grids, pero no ejecuta el filtrado y no actualiza el griddetalle, a pesar de que se llama la rutina actualizar cada vez que cambia de registro en el grid maestro.

Gracias
YumKaaX
Novato
Novato
 
Mensajes: 2
Registrado: Jue Nov 23, 2006 12:25 pm


Re: Maestro-Detalle usandoTIBQuery,ClientDataSet,DataSetProv

Notapor yalmar » Jue Nov 23, 2006 3:52 pm

Intenta usar TIBDataSet en lugar de TIBQuery.
Avatar de Usuario
yalmar
Colaborador
Colaborador
 
Mensajes: 264
Registrado: Mié Jun 09, 2004 4:14 pm
Ubicación: Brasil


Re: Maestro-Detalle usandoTIBQuery,ClientDataSet,DataSetProv

Notapor YumKaaX » Jue Nov 23, 2006 4:52 pm

yalmar escribió:Intenta usar TIBDataSet en lugar de TIBQuery.


Bueno, haciendo lo que me dices funciona, gracias, pero ahora te voy a exponer lo siguiente:

Si hago que el DataSource apunte al TIBDataSet funciona muy bien, conforme te mueves por el Grid Maestro el Grid Detalle se actualiza, pero como estoy apuntando a un TIBDataSet no me deja modificar un dato de cualquier Grid, maestro o detalle, no importa si le indicas ReadOnly=false.

Eso de modificar solo lo permite si haces que el DataSource de ambos, maestro y detalle apunten a su TClientDataSet correspondiente.

Que opinas sobre eso?
YumKaaX
Novato
Novato
 
Mensajes: 2
Registrado: Jue Nov 23, 2006 12:25 pm


    

Volver a C++ Builder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron