![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Es extraño que no funcionara tu prueba con el IBExpert, de hecho antes de responderte hice la misma prueba, casi que igual... y me funcionó correctamente.
Aunque lo que planteas sí me sucedió alguna vez con una versión 2.1 de Firebird, ¿probaste si ademas eliminas también el Attachement de la tabla MON$ATTACHMENTS?
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#2
|
||||
|
||||
|
Cierto, me adelante a una de las pruebas. Sí funciona eliminando el registro, pero únicamente si el SP se ejecuta mediante la sentencia SELECT. Cuando ejecuto el SP usando EXECUTE PROCEDURE no funciona. Completamente seguro.
Aún así, tengo el inconveniente mencionado. Funciona eliminado el registro desde IBExpert, pero dentro de mi aplicación no es posible ejecutar ninguna sentencia SQL mientras el SP no termine su ejecución, ni siquiera desde otra transacción. Se me ocurre que podría intentar realizar otra conexión, pero en este caso creo que no funciona si se usa Firebird Embedded... con Firebird Server por supuesto que sí... voy a probar y regreso.
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. |
|
#3
|
||||
|
||||
|
Por cierto, uso Firebird 2.5.2.26540
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. |
|
#4
|
||||
|
||||
|
Interesante prueba, ¿y si ejecutas el procedimiento en un hilo de ejecución aparte (Tthread), para después hacer el cancelado en otro botón si el usuario quiere?
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#5
|
||||
|
||||
|
Se me olvidaba decir que esa parte ya estaba implementada. El SP se ejecuta desde un TThread. Nada qué hacer al respecto. La cuestión es que es el servidor Firebird quien no procesa ninguna solicitud hasta tanto no termine, siempre que esta pertenezca a la misma sesión. Por eso estaba implementando la solución iniciando una nueva conexión.
Bueno, y acabo de hacerlo. botón 'Detener proceso' funciona perfectamente, aunque hasta este momento lo probé conectado a Firebird Server. Creo que habían intentado dos conexiones desde la misma aplicación con Firebird Embedded y no había funcionado. Esa es la prueba que me dispongo a realizar...
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. |
|
#6
|
||||
|
||||
|
Perfecto! No hay ningún inconveniente con Firebird Embedded. Inicio una nueva conexión, ejecuto la sentencia DELETE y la ejecución del SP se detiene tal y como sucede en Firebird Server.
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. |
|
#7
|
||||
|
||||
|
¡Genial!, me alegra dicha noticia. Aunque me deja pensativo el tema del execute procedure.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| cancelar un insert en Firebird | ebeltete | Firebird e Interbase | 3 | 24-07-2013 17:55:12 |
| Operacion Not applicable | Yun-i | Varios | 5 | 25-04-2012 22:58:05 |
| Qué significa la operación X^Y | meguzman | C++ Builder | 6 | 19-08-2008 08:49:17 |
| Operacion con Hexadecimales | BetoAlonso | Varios | 11 | 26-02-2008 00:40:25 |
| Operación Papa | Julián | Debates | 13 | 05-05-2005 15:04:52 |
|