4D v16

Triggers

Inicio

 
4D v16
Triggers

Triggers    


 

 

Además de las manipulaciones explicadas en el vídeo, también debe tener en cuenta que:

Al llamar un evento MOTOR, hay una precisión importante a tener en cuenta: los triggers se ejecutan en el motor de la base de datos:

  • En monopuesto, es el programa 4D el que contiene a la vez el motor de base de datos, el motor de renderización (visualizaciones, etc.).
  • En modo cliente/servidor (servidor SQL o servidor web), los datos se almacenan en el servidor y se envían a las máquinas cliente utilizando el motor de 4D Server. En este caso, los triggers se ejecutan en el servidor y no localmente en las máquinas cliente.

Por lo general, se acostumbra a crear métodos proyecto que realizan sus procesos, cálculos, etc. y se llame a estos métodos "genéricos" desde métodos específicos tales como triggers.

Vimos cómo pasar parámetros, es mucho más fácil de mantener y ahorrar una cantidad considerable de tiempo en el desarrollo, así como en la corrección de errores. Su código será mucho más conciso, fiable y fácil de leer.

Puede ejecutar triggers en cascada. En este caso, 4D tiene comandos que permiten conocer las y el nivel en la cascada.

Un trigger también puede servir para "aceptar" o "rechazar" cualquier intento de operación en el registro.

Esta es una forma de permitirle asegurar la integridad de su base de datos, independientemente de cómo se procesa la información:

  • SQL
  • plug-in
  • entrada
  • importación
  • Web

Sabiendo que un trigger bloquea los otros procesos durante su ejecución, las principales reglas a seguir en un trigger son:

  • velocidad de ejecución
  • sin interfaz (alertas, mensajes, etc.)

En este video, vamos a aprender a configurar los eventos base y a tenerlos en cuenta en la programación.
Un trigger (método tabla) se utiliza para verificar las acciones realizadas por el motor de la base en los datos:

  • creación
  • modificación
  • eliminación.

En ese sentido, un trigger es un método como cualquier otro.  Simplemente el contexto en el que se ejecuta es el que cambia.

Al igual que los eventos formulario, los eventos base deben ser seleccionados para que 4D de control al trigger a ejecutar.

En el Inspector de tabla podemos activar todo evento base.

En la parte inferior derecha encontrará el botón “Editar”, que permite crear el método a ejecutar ocurren los eventos seleccionados.

El método se estructura por lo general de la siguiente manera::

 $evt:=Database event `¿Cuál es el número del evento que está siendo ejecutando por el motor de la base de datos?
 Case of
    :($evt=On Saving New Record Event`Se guarda un nuevo registro
 
    :($evt=On Saving Existing Record Event`Se guarda un registro existente
 
    :($evt=On Deleting Record Event`Se elimina un registro
 
 End case

A diferencia de un método formulario que sólo se ejecuta durante una visualización en pantalla o impresión, un trigger se ejecuta independientemente de cómo acceda a los registros:

  • programación
  • import/export
  • SQL
  • Web
  • etc.

El trigger tiene la ventaja de ser un punto de paso obligatorio.

  • Vamos a añadir un campo Date_Last_Modif a la tabla Intervention
  • Vamos a hacer que sea visible en el formulario
  • Y asignamos un valor a la tabla cada vez que se guarda un registro:

 [Interventions]Date_Last_Modif:=Current date

Por supuesto, esta última modificación también será válida cuando se crea un registro.

Vamos a probarlo efectuando una modificación:

  • Si cambiamos la fecha de intervención
  • A continuación, guardamos y volvemos aquí, se ha asignado un valor a la fecha de modificación
  • Así que el trigger funciona correctamente.

 
 

 
PROPIEDADES 

Producto: 4D
Tema: Triggers

 
HISTORIA 

 
ARTICLE USAGE

Autoformación ( 4D v16)