FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Error en Applyupdates() de ClientDataSet con TIbQuery y Delphi 7
Hola.
Acabo de migrar una aplicación que tenia en Delphi 6 a Delphi 7. Cuando he empezado a probarla tras recompilarla he notado que aparecen errores cuando llamo a ApplyUpdates de los ClientDataSet. Esto funcionaba bien en Delphi 6 pero en el 7 siempre obtengo un error. Un modulo básico contiene lo siguiente. - Un componente TIbquery cuya consulta es un 'SELECT * FROM ...' de una sola tabla. Le he añadido los campos persistentes y he puesto Providerflags.pfInkey al campo que es clave primaria. - Un TDataSetProvider con DAtaset apuntando al TIbquery y con UpdateMode = UpWhereKeyOnly. - Un ClientDataset conectado al Datasetprovider y a los controles de edicion de datos. - Métodos para llamar A ClientDataset.Applyupdates(0) en el momento que quiera pasar los cambios a la Base de datos. Cuando llamo a este último método me salta una excepcion con el texto ' exception EibclientError with message 'SQL Parse Error: Parameter Name Expected' y tras este uno con 'Database not Assigned'. Probando, he decidido poner un TSQLConnection y un TSQLQuery y conectarme a Interbase por dbexpress. He hecho las mismas operaciones que hice sobre la tIbquery en el TSqlQuery (campos, providerflags, SQL) y he redireccionado el DatasetProvider.Dataset a SQLQuery. De esta forma ha funcionado sin problema. ¿Alguien puede darme alguna pista o ayuda para solventar el error con los componentes de Interbase? Gracias. |
#2
|
||||
|
||||
Hola de nuevo.
He solucionado el problema. Parece ser que la version de IBX que viene con mi Delphi 7 no funciona bien. He actualizado a la última a traves de los enlaces del club delphi y ahora funciona correctamente. |
|
|
|