Interbase - eventos |
Top Previous Next |
|
//Utilizando Eventos do Interbase na sua aplicação { Eventos são mensagens que o interbase manda para a aplicação. No interbase os eventos podem ser enviados a partir de trigger ou store procedures. Para a aplicação receber os eventos ela deve registrar o interesse pelo evento. }
//No Interbase //Dentro da store procedure ou trigger envie o evento Post_Event <nome_do_evento> ex: Post_Event 'evento1'
//No Delphi
//O componente responsavel pelos eventos é o IBEvents //Na propriedade Events insira os eventos a serem registrados //no create do datamodule ou do form onde esta o IBEvents registre os eventos ex.: procedure TForm1.FormCreate(Sender: TObject); begin IBEvents1.RegisterEvents; end;
//no destroy do form o seguinte código procedure TForm1.FormDestroy(Sender: TObject); begin if IBDatabase1.Connected then begin //se a transacao esta aberta fechar If IBTransaction1.InTransaction then IBTransaction1.Commit //se existe registro de eventos desalocar if IBEvents1.Registered then IBEvents1.UnRegisterEvents //fechar conexao com o banco IBDatabase1.Close end; end;
//o IbEvents tem um evento que recebe as mensagens do interbase procedure TForm1.IBEvents1EventAlert(Sender: TObject; EventName: String; EventCount: Integer; var CancelAlerts: Boolean); begin showmessage('Recebi o evento: '+EventName); end;
|