Além das manipulações explicadas no vídeo, também se deve ter em conta que:
Ao chamar um evento MOTOR, há uma precisão importante a levar em conta: os triggers se executam no motor da base de dados:
Em monoposto, é o programa 4D que contém ao mesmo tempo o motor de base de dados, o motor de renderização (visualizações, etc.).
Em modo cliente/servidor (servidor SQL ou servidor web), os dados se armazenam no servidor e se enviam às máquinas cliente utilizando o motor de 4D Server. Neste caso, os triggers se executam no servidor e não localmente nas máquinas cliente.
De um modo geral, é costume de criar métodos de projeto que executam seus processos, cálculos, etc. e eles chamam esses métodos "genéricos" desde métodos específicos, como triggers.
Nós vimos como passar parâmetros, é muito mais fácil de manter e guardar uma quantidade considerável de tempo em desenvolvimento, bem como a correção de erros. Seu código será muito mais conciso, viável e fácil de ler.
Você pode executar triggers em cascata. Neste caso, 4D tem comandos que permitem conhecer as e o nível da cascata.
Um trigger pode também servir para "aceitar" ou "rejeitar" qualquer operação no registro.
Esta é uma maneira para que possa garantir a integridade do banco de dados, independentemente de como a informação é processada:
SQL
Plug-in
Entrada
Importação
Web
Sabendo que um trigger bloqueia os outros processos durante sua execução, as principais regras a seguir em um trigger são:
Neste vídeo, vamos a aprender a configurar os eventos base e a tê-los em conta na programação. Um trigger (método tabela) se utiliza para verificar as ações realizadas pelo motor da base nos dados:
Criação
Modificação
Eliminação.
Nesse sentido, um trigger é um método como qualquer outro. Simplesmente o contexto no qual se executa é o que muda.
Ao igual que os eventos formulário, os eventos base devem ser selecionados para que 4D de controle ao trigger a executar.
No Inspetor de tabela podemos ativar todo evento do banco de dados.
Na parte inferior direita encontrará o botão “Editar”, que permite criar o método a executar ocorrem os eventos selecionados.
O método se estrutura geralmente da seguinte maneira:
$evt:=Database event`Qual é o número do evento que está sendo executado pelo motor da base de dados? Case of
:($evt=On Saving New Record Event) `Se guarda um novo registro
A diferença de um método formulário que só se executa durante uma visualização em tela ou impressão, um trigger se executa independentemente de como acesse aos registros:
Programação
Import/export
SQL
Web
etc.
O trigger tem a vantagem de ser um ponto de passo obrigatório.
Vamos a adicionar um campo Date_Last_Modif à tabela Intervention
Vamos a fazer que seja visível no formulário
E atribuímos um valor à tabela cada vez que se guarda um registro:
[Interventions]Date_Last_Modif:=Current date
É claro, esta última modificação também será válida quando é criado um registro.
Vamos a provar realizando uma modificação:
Se mudarmos a data de intervenção
A continuação, guardamos e voltamos aqui, foi atribuído um valor à data de modificação.