![]() |
SP en Firebird y consulta con Zeos Query
Muy buen día a todos, tengo un problema o mas que eso una falta de conocimiento, mi pregunta es cual es la forma correcta de mandar llamar un stored procedure desde los componentes ZEOS cuando este cuenta con info de salida.
Ese es mi procedimiento almacenado:
y este es mi codigo en Delphi:
Mi problema es que no se actualiza el dato en la tabla hasta que cierro mi sistema, tengo la impresion que tengo que utilizar ExecSQL sin embargo cuando hago esto no se como obtener el dato que me devuelve el procedimiento. Intente hacerlo por medio de parametros fallando en el intento. Alguien podria resolver mi duda por favor! se que es algo muy simple que se me esta escapando. Muchas gracias de antemano!! |
Supongo que tienes que trabajar con transacciones.
Abres una transaccion, haces el select y luego haces commit. No se como será con Zeos, pero supongo que no será complicado. He visto este código aqui:
|
Gracias duilioisola ya probé hacer eso y sigue sin funcionar, como info extra tengo mi Connection con la propiedad AutoCommit en True. Para todas las consultas de tipo insert y update sin abrir y cerrar Transaccion se hace el autocommit menos para esta consulta a procedimiento.
La verdad sigo perdido... :( |
Pues parece que no salió ninguna propuesta :(, comento lo que me dí cuenta y como lo resolví, aunque no me gustó la forma pues fué la única que encontré.
Lo que me di cuenta es que en los ZConnection con la propiedad Autocommit en True, funciona correctamente para los querys que he utilizado, tales como updates, inserts, deletes, etc, sin embargo con los SP no realiza el commit sino hasta que se cierra la aplicación (en mi caso). Lo que hice fué justo antes de abrir el Query del SP cambiar la propiedad de Autocommit del ZConnection a False, y justo despues ejecutar el Query y obtener el resultado del SP realizo un Commit a la Connection para despues regresar su propiedad Autocommit a True. Repito no me convence mucho esta solucion, sin embargo es como lo he podido resolver, si alguien tiene mas propuestas estoy atento a escucharlas. Saludos y Gracias! |
¿El Query no tiene una propiedad Autocommit?
Quizás la conexión tenga esta propiedad para cuando creas algún componente que dependa de esta pero luego a cada uno de estos componentes deberías poder modificarle esta propiedad. Quedaría algo así:
|
No mi estimado, el ZQuery no cuenta con esa propiedad :(... y el codigo que pones es exactamente como lo estoy solucionando... sin embargo sigo con la espinita de si se puede hacer de forma distinta....
Muchas gracias por tu atencion y comentarios! |
La franja horaria es GMT +2. Ahora son las 09:35:47. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi