Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-05-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
No lo he probado con la v2.5, todavía sigo con la v2.1 pero prueba a quitar el 'or update or delete' y deja solamente el 'insert', lo digo porque, por ejemplo, en el 'after delete' no se puede usar el 'new.' y entonces puede que esté fallando el trigger aunque no indique ningún error.
Código SQL [-]
CREATE TRIGGER EV_TABLA1_MODIFIED FOR TABLA1 
ACTIVE AFTER INSERT /* OR UPDATE OR DELETE */ POSITION 1 
AS 
BEGIN   
  POST_EVENT 'TABLA_MODIFIED';   
  INSERT INTO TABLALOG (ID, NOMBRE) VALUES(NEW.ID, NEW.NOMBRE);  /* el new. no se puede usar en el after delete */ 
END
También puedes probar:
Código SQL [-]
CREATE TRIGGER EV_TABLA1_MODIFIED FOR TABLA1 
ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 1 
AS 
BEGIN   
  POST_EVENT 'TABLA_MODIFIED';
  if (inserting) then
    INSERT INTO TABLALOG (ID, NOMBRE) VALUES(NEW.ID, NEW.NOMBRE); 
  else
  if (updating) then
    loqueseaalupdating;
  else
  if (deleting) then
     loqueseaaldeleting;
END

A ver qué resultado obtienes.
Responder Con Cita
  #2  
Antiguo 05-05-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Casimiro.

Gracias por tu respuesta, tienes razón con el DELETE y NEW probé con el código que adjuntaste pero IBEvents tampoco captura el evento.

Tomando en cuenta lo que sugeriste y para simplificar, hice la prueba sólo con INSERT de este modo:
Código SQL [-]
CREATE TRIGGER EV_TABLA1_MODIFIED FOR TABLA1
ACTIVE AFTER INSERT POSITION 1
AS
BEGIN
  POST_EVENT 'TABLA_MODIFIED';
END
Directamente quité la inserción (ya está claro que Firebird dispara el trigger sin problemas), pero nada... sigue sin entrar a OnEventAlert.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 06-05-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Pues estoy haciendo unas pruebecitas y tampoco funciona con la 2.1 aunque no uso los IBX, sino los FIBplus que no tienen, creo, componentes para eventos de la BD.
Puede ser que el IBevents ya no sea compatible con las últimas versiones de firebird.
Responder Con Cita
  #4  
Antiguo 06-05-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Puede ser que el IBevents ya no sea compatible con las últimas versiones de firebird
Si, creo que eso debe estar pasando...

Me voy a meter en camisa de once varas e investigar un poco sobre la api de Firebird para ver como capturar los eventos a ver si se le puede buscar la vuelta... Realmente sería una lástima desperdiciar esa capacidad.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 06-05-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
A ver qué descubres
Responder Con Cita
  #6  
Antiguo 06-05-2012
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 15
MartinS Va por buen camino
Hola ecfisa:

Creas el evento así (TABLA_MODIFIED)

Código SQL [-]
POST_EVENT 'TABLA_MODIFIED';

y lo registras asi

Código Delphi [-]
IBEvents1.Events.Add('EV_TABLA1_MODIFIED');

en definitiva TABLA_MODIFIED <> EV_TABLA1_MODIFIED creo que por eso no lo encuentra.-

Puede que este medio cansad0, loco o un poco desubicado, pero no es el primer post de aca lo que buscas?. Ah tambien usa Firebird 2.5 y funciona aunque tiene otro problema como ya abras visto.-

Saludos.-

Última edición por MartinS fecha: 06-05-2012 a las 04:33:18. Razón: Usa firebird 2.5
Responder Con Cita
  #7  
Antiguo 06-05-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Puede que este medio cansad0, loco o un poco desubicado
No señor. El que estaba en ese estado, indudablemente era yo .

Tenes toda la razón !!! Es un error tán pero tán obvio, que no sé como se me escapó...

La verdad me deja mas tranquilo, se puede seguir trabajando con lBEvents...

Leí el otro post, pero el comportamiento que estaba obteniendo no pareciá tener relación con lo tratado allí, se me presentaba más como un problema de versiones.

Es más, me pasó por no basar la prueba en ninguna de las aplicaciones anteriores que de echo funcionan bién, y hacerla de cero. Errores pavos que uno tiene...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 06-05-2012 a las 18:52:34.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Como usar el componente IbEvents? MartinS OOP 11 07-05-2012 16:25:07
Post_event y cargas masivas Young Firebird e Interbase 4 22-06-2011 16:50:55
ibEvents santiago14 Firebird e Interbase 1 27-10-2007 04:27:33
IBEvents en remoto Jack Conexión con bases de datos 0 23-08-2005 13:35:34
POST_EVENT con parametros gendelphi Firebird e Interbase 1 13-12-2003 00:18:26


La franja horaria es GMT +2. Ahora son las 14:40:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi