AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Administrar bases de datos / HFSQL / Gestión de desencadenadores
  • Definition
  • Uso de desencadenantes
  • Bases de datos relevantes
  • HFSQL Classic y HFSQL Client/Server
  • Beneficios
  • Tipos de disparadores disponibles
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Definition
Un disparador es un procedimiento WLanguage llamado automáticamente por el motor HFSQL cada vez que se realiza una modificación (adición, eliminación, modificación, ...) en un Record de un archivo de datos.
Se utiliza un trigger para asociar un WLanguage Process con una o más funciones HFSQL sin tener que preocuparse por la ubicación de estas funciones en el código. Los disparadores associated con las funciones HFSQL utilizadas se ejecutan incluso para las ventanas o para el código creado por un asistente.
Uso de desencadenantes

Bases de datos relevantes

Los disparadores se pueden aplicar a todo tipo de archivos de datos:
  • HFSQL Classic,
  • HFSQL Client/Server,
  • Conectores Nativos (Oracle, AS/400, etc.),
  • ODBC,
  • OLE DB, ...

HFSQL Classic y HFSQL Client/Server

HFSQL Classic y HFSQL Client/Server permiten definir los activadores.
En el modo HFSQL Classic, los disparos se gestionan mediante programación a través de las funciones de WLanguage. Estos triggers se pueden utilizar en todas las bases de datos. Para obtener más información, consulte Los desencadenantes.
En modo Servidorse dispone de dos tipos de desencadenantes:
  • Los disparadores se ejecutan en el cliente. Estos disparadores son equivalentes al modo Clásico y se manejan por programación.
  • El servidor activa la ejecución en el servidor. Estos disparadores son associated con los procedimientos almacenados que se encuentran en el servidor. Estos disparadores se definen directamente en el análisis (para un uso avanzado, también pueden definirse y manejarse mediante programación). Para obtener más información, consulte El servidor activa.
Observación: Triggers y roscas: Si las funciones liberan desencadenantes en diferentes Thread s, el Procedure ejecutado en el desencadenante utiliza el contexto HFSQL correspondiente al de la función actual (un contexto HFSQL por Thread).

Beneficios

El uso de un gatillo le permite hacerlo:
  • Reducir el tamaño del código. Por ejemplo, el uso de un trigger permite agrupar los procesos associated con una o más funciones HFSQL (comprobación de duplicados, consistencia de datos, ...).
  • Facilitar la lectura del código.
  • Simplificar las evoluciones futuras de la aplicación.
Atención: Una modificación de archivo realizada a través de una consulta no activa los disparadores del cliente (hModifyFile constante utilizada en HExecuteQuery).
Tipos de disparadores disponibles
Hay dos tipos de disparadores disponibles:
  • Los disparadores "ANTES":
    Un trigger "BEFORE" se llama antes de ejecutar una función HFSQL (HAdd, HModify, HDelete, etc.) o una función para gestionar controles Tabla archivo de datos.
    Un disparador "ANTES" puede utilizarse, por ejemplo, para comprobar la coherencia de los datos de los artículos de un Record. Con este tipo de disparador, se puede inicializar un Variable HFSQL para cancelar la ejecución de la función HFSQL de associated.
  • El"DESPUÉS" se activa:
    Un trigger "AFTER" se llama después de ejecutar una función HFSQL (excepto si se interrumpió el programa al ejecutar esta función) o una función para gestionar controles Tabla archivo de datos.
    Un disparador "DESPUÉS" puede ser usado para manejar el Process de los errores por ejemplo.
Versión mínima requerida
  • Versión 12
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local