FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Borrado de líneas en un IBDataSet
Un saludo a todos los participantes.
Aunque ya soy veterano, no participo en estos foros desde la primera fase en que estos se iniciaron, por lo tanto, me alegro reencontrarme con gente que comparte las mismas inquietudes. Al asunto: Estoy empezando una aplicación con Firebird 1.5, IBX y delphi 7. El problema es el siguiente: En los eventos AfterInsert, AfterPost y AfterDelete del IBDataSet, ejecuto el Commit de la transaccion asociada a este. La cosa funciona como se espera, excepto que si después de insertar una linea, esta es borrada. Entonces a pesar de que hay un Commit en el evento AfterDelete, la linea permanece inalterada. Si se borra una linea existente, en vez de una recién creada, funciona perfectamente. He probado poner un CommitRetaining en el evento AfterDelete, y funciona, pero al cerrarse el DataSet hay que volverlo a abrir, y situar el puntero en el registro que estaba, con lo que no creo que esto sea solución. ¿Alguien sabe a que puede ser debido esto?. Muchas gracias a todos por anticipado. Última edición por birmain fecha: 12-10-2007 a las 03:26:27. |
#2
|
||||
|
||||
Hola
No manejo Firebird pero el concepto seria asi. Para mi no tiene logica que no se pueda eliminar un registro aunque este recién creado, puede estar pasando algo con el post del mismo, no se. Saludos |
#3
|
|||
|
|||
Gracias, Caral, por tu respuesta.
La estructura que sugieres, la implemento en el caso de que una transacción afecte a más de una tabla. Por ejemplo en una facturación, donde se ven implicadas varias. Se trata de aplicar todos los cambios al mismo tiempo, o deshacerlos para mantener la coherencia. Aquí se trata de una tabla sencilla. Por lo tanto, mando al servidor los cambios una vez producidos. Un saludo. |
#4
|
||||
|
||||
Hola
Por cierto Bienvenido al club. Cita:
Si una linea existente se borra y una recien creada no, la lógica dice que el problema no esta en el delete, esta en el insert o post, dependiendo de cual uses, osea que no se estan insertando con la suficiente rapidez los datos, por alguna razon que desconozco. Bueno, es solo la opinion de un novato. Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Borrado de basuras | REHome | OOP | 2 | 09-01-2007 13:18:00 |
Borrado en cascada | fjolivares | Firebird e Interbase | 6 | 04-03-2004 11:09:25 |
Borrado de un .pas? | danytorres | Varios | 5 | 30-12-2003 17:28:33 |
ADO Borrado en Cascada | TONIAM | Conexión con bases de datos | 2 | 09-12-2003 15:20:25 |
Auto borrado | brandolin | Varios | 6 | 27-09-2003 21:18:37 |
|