DEV CLASES/TRIGGERS

De Pragma Wiki
Ir a la navegación Ir a la búsqueda

Descripción

La tabla prxtriggers (Clases, triggers) define la cabecera de los triggers.

Los triggers (ver Triggers) permiten agregar comportamiento a las operaciones de inserción, actualización o eliminación de datos de una tabla.

Los triggers pueden definirse directamente en la base de datos, pero los triggers definidos en el catálogo tienen algunas ventajas adicionales:

  • Se recrean cada vez que haya cambios de estructura en la tabla sobre la que aplican.
  • Los triggers aplican también sobre las clases derivadas de la clase que los define.

Estructura

El detalle de los triggers se define en DEV CLASES/TRIGGERS DETALLE.

Identidad

Lista de campos

Columna Campo físico Campo lógico Atributo Descripción Etiquetas Definición Observaciones
1 Clase Clase prxclases Clases KEY,REQ,INS prxtriggers Clase que define el trigger.
2 Codigo Codigo VARCHAR(128) Caracteres de longitud variable hasta 128 caracter/es KEY,REQ,VIS,INS prxtriggers Código del trigger.
3 Descripcion Descripcion VARCHAR(128) Caracteres de longitud variable hasta 128 caracter/es VIS,INS,UPD prxtriggers Descripción del trigger.
4 Activo Activo BIT Campo lógico, admite 1, 0 y NULL REQ,VIS,INS,UPD prxtriggers Marcar si el trigger se encuentra activo (desactivar elimina el trigger hasta su activación).
5 oInsert oInsert BIT Campo lógico, admite 1, 0 y NULL VIS,INS,UPD prxtriggers Marcar para indicar que el trigger gatilla en INSERT.
6 oUpdate oUpdate BIT Campo lógico, admite 1, 0 y NULL VIS,INS,UPD prxtriggers Marcar para indicar que el trigger gatilla en UPDATE.
7 oDelete oDelete BIT Campo lógico, admite 1, 0 y NULL VIS,INS,UPD prxtriggers Marcar para indicar que el trigger gatilla en DELETE.
8 TS TS prxtimestamp Marca de tiempo. REQ, prxtriggers TIMESTAMP del momento de creado del objeto.
9 oOperaciones oOperaciones VARCHAR(256) Caracteres de longitud variable hasta 256 caracter/es COMPUTADO Campo calculado que arma el comando de las operaciones del trigger.

Observaciones adicionales sobre los campos

Campos Clase y Codigo

El nombre del trigger lo arma directamente el sistema de la siguiente manera:

  • Nombre de la clase + "_TR_" + Nombre del campo.

Por ejemplo, si la clase CUENTA define un trigger cuyo código es CUENTASUB_UPDATE el nombre del trigger será CUENTA_TR_CUENTASUB_UPDATE.

Si se derivara una nueva clase de la clase CUENTA, por ejemplo, CUENTA_DERIVADA, el nombre del trigger sería CUENTA_DERIVADA_TR_CUENTASUB_UPDATE.