FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
error al modificar registro con firebird
Buenas a todos después de tanto tiempo...
Tengo una base de datos en Firebird 2.0 y uso los componentes MDO para el tratamiento de los datos. La aplicación funciona correctamente salvo cuando intento modificar un registro. Al modificar un registro: xxxx.edit; xxxx.campo.value:=nuevo valorM; xxxx.post; Lo hace sin error, pero al cerrar la BD y volver a abrirla, veo que no se ha modificado, pero sobre la marcha hago la modificación de nuevo y al cerrar y abrir, si que se ven los cambios. El problema es ese, porque tengo que cerrar la BD , volver a abrirla para hacer la modificacuión y que se vean los cambios. He probado a hacer el commit antes de modificar y nada de nada... No sé por que puede seer, alguien tiene una idea....??? Gracias... |
#2
|
||||
|
||||
El objeto TMDOTransaction tiene la propiedad AutoCommit, ponla a true. Así después de guardar un dato, se hace el commit automático (entre otras cosas).
Cita:
No haría falta cerrar la BD, sino el Dataset donde has hecho el cambio y volverlo a abrir, de nuevo esto depende del uso de commit o bien CommitRetaining. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#3
|
|||
|
|||
sigue sin funcionar
Buenas de nuevo, la cosa sigue igual.
Hasta que no hago el proceso de modificación 2 veces no se reflejan los cambios. He probado todo lo que se me ocurre y nada. El proceso de nuevo registro funciona correctamente,, pero el de modificar ,. que se diferencia de añadir por el 'append', que en el caso de modificar cambia el valor del registro actual., no funciona, tengo que hacer el mismo proceso 2 veces para que funcione. Se os ocurre algo más ???? Un saludo... |
#4
|
||||
|
||||
Mira sobre todo el evento AfterScroll y beforePost, por si tienes algún código que cancele el guardado.
Los MDO funcionan perfectamente. Pon el código que usas para editar el registro, igual vemos algo. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#5
|
|||
|
|||
os paso el código
Esto es lo que hace al modificar:
Código:
form1.dataarq.Edit; form1.dataarqFECHAAR.value:=fech1.Date; form1.dataarqCONCEPTOAR.Value:=coned.Text; if cob.Checked=true then begin form1.dataarqENTRADAAR.AsFloat:=imped.Value; form1.dataarqSALIDAAR.Value:=0; end else begin form1.dataarqsalidaar.AsFloat:=imped.Value; form1.dataarqENTRADAAR.Value:=0; end; form1.dataarq.Post; abrir y cerrar el dataset, volver a realizar la misma modificación por 2ª vez y entonces es cuando se quedan grabados los datos modificados... No sé que probar...Saludos... |
#6
|
|||
|
|||
haz doble click sobre el mdotransacction , y ponle read commited.
Despues de hacer el form1.dataarq.Post; haz un form1.dataarq.transaction.commitretaining. si tienes algun otro dataset que este usando esa tabla , deberas hacerle un refresh o cerrarlo y abrirlo para que ese dataset refresque los datos. saludos. |
#7
|
|||
|
|||
Lo he intentado y nada...
He hecho lo que me han dicho y sigue sin funcionar, una cosa tan elemntal y no vá.
Una pista más: En el ModifiSQL del Mdodataset figura: Código:
UPDATE ARQUEO1 SET FECHAAR = :FECHAAR, CONCEPTOAR = :CONCEPTOAR, ENTRADAAR = :ENTRADAAR, SALIDAAR = :SALIDAAR, CUENTO = :CUENTO WHERE CUENTO = :OLD_CUENTO Gracias.... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Modificar registro | Elite237 | OOP | 4 | 03-08-2007 05:27:21 |
Modificar un Registro en un TMDOQuery | KAYO | Firebird e Interbase | 4 | 30-07-2007 23:43:02 |
Error al insertar un registro en Firebird | mateamargo | Conexión con bases de datos | 4 | 12-06-2005 15:52:36 |
Como modificar un registro? | Telemaco | Conexión con bases de datos | 4 | 20-02-2004 17:45:48 |
modificar olo un registro | Irina | SQL | 1 | 26-05-2003 14:41:59 |
|