4D v16

Triggers

Página Inicial

 
4D v16
Triggers

Triggers    


 

 

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:

  • Velocidade de execução
  • Sem interface (alertas, mensagens, etc.).

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
 
    :($evt=On Saving Existing Record Event`Se guarda um registro existente
 
    :($evt=On Deleting Record Event`Se elimina um registro
 
 End case

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.
  • Assim que o trigger funciona corretamente.

 
 

 
PROPRIEDADES 

Produto: 4D
Tema: Triggers

 
HISTÓRIA 

 
ARTICLE USAGE

Autoformação ( 4D v16)