Ver Mensaje Individual
  #3  
Antiguo 24-09-2003
ElSanto24 ElSanto24 is offline
Miembro
 
Registrado: ago 2003
Ubicación: Elche
Posts: 14
Reputación: 0
ElSanto24 Va por buen camino
hola marc:

He seguido tu consejo, en lugar de ponerlo after delete lo lo puse before delete, lo probé...y aparentemente funcionaba pues no aparece el mensaje de antes, pero realmente no lo está haciendo bien, cuando voy al ibconsole veo que los registros que debia haber borrado de la tabla detalle permanecen mientras que el registro maestro a desaparecido...así que, una pena pero no funciona correctamente

A alguien se le ocurre otra posibilidad....

pensando un poco llego a la conclusion de que no es tan descabellado ponerlo after delete pues, mientras lanzo la peticion al servidor, hasta que no haga commit no se va a reflejar, el commit o el rollback lo hago en el evento afterdelete...la pregunta es...¿ se dispara antes el trigger? o lo hace el evento delphi?, si la respuesta es que el trigger se dispara antes entonces no hay problema en que lo pusiera after delete creo yo...sin embargo si la respuesta fuera que el evento de delphi se lanza antes entonces si que habria problemas.....

He probado el ejemplo que viene del MastApp un ejemplo de delphi con maestro detalle y ....sorprendentemente tambien me aparece error de foreign key....a vosotros os ocurre?, estoy empezando a pensar que pueda llegar a ser el interbase que tengo....pero, no tiene sentido..no me lo explico....

en fin...para más inri y desesperacion mia, he creado un trigger "after delete" con un post_event tal que así:
create trigger aviso for clientes active after delete
as
begin
post_event 'aviso';
end

despues en delphi
hago lo siguiente

IBEvents1.Events.Add('AVISO');
IBEvents1.Registered:=true;

y en el OnEvent hago:

procedure TFPrincipal.IBEvents1EventAlert(Sender: TObject;
EventName: String; EventCount: Integer; var CancelAlerts: Boolean);
begin
showmessage('hola mundo');
end;

hay algo que me falte???
porque pasa de mi face por el forro...y ya no se que pensar

alguna idea?
gracias
__________________
El camino para llegar al conocimiento de las cosas pasa por el aprendizaje humilde de lo que nos rodea
Responder Con Cita