FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Update de un DBGrid que contiene JOIN
Hola !
Tengo un DBGrid asociado al siguiente IBQuery1: Mi problema es que al insertar un registro nuevo o modificar el existente en el DBGrid correspondiente, no me cambia de manera automática la columna del nombre (que viene dada por S.NAME). Utilizo el siguiente IBUpdateSQL: Insert junto con Modify Cual debería ser el contenido correcto del IBUpdateSQL para que me funcione correctamente y se actualice correctamente la columna del nombre en el DBGrid al modificar o insertar ? Un cordial saludo. |
#2
|
|||
|
|||
Porque no utilizas un IBDataset?
a mi me hizo un comportamiento similar pero cuando tenia definido en IB un campo calculado, quite la definicion y crei el campo calculado con Delphi con Autcalcfields y se soluciono.. |
#3
|
||||
|
||||
Esto es lo que pone en el manual de InterBase :
Cita:
Cita:
|
#4
|
||||
|
||||
He encontrado una explicación bastante detallada de este problema y como solucionarlo en el libro de Marco Cantú.
Al final he utilizado un IBDataSet (como recomendaba Delfino), pero debe de funcionar igualmente con un IBQuery y un IBUpdateSQL asociado. El secreto está en el apartado Refresh correspondiente. A continuación os detallo el comando Select completo que utilizo y el Refresh necesario. De esta manera el DBGrid se actualiza de manera automática en el mismo momento que se cambie el campo clave. El correspondiente Refresh que debe ir asociado es
|
|
|
|