|
|
|
|
|
- Presentación
- Tareas programadas en el Centro de Control HFSQL
- Crear una tarea programada
- Eliminar una tarea programada
- Modificar una tarea programada
- Programación de tareas
- Crear una tarea programada
- Historial de ejecución de tareas programadas
- Manipulación de tareas programadas en WLanguage
- Ejemplo de uso de HDeclareExternal en un procedimiento almacenado
- Ejemplo de ejecución de la prueba de un procedimiento almacenado
HFSQL Cliente/Servidor: Tareas programadas
Disponible solo con este tipo de conexión
Las tareas programadas se utilizan para programar procesos automatizados. Tiene la posibilidad de definir tareas programadas en el servidor HFSQL. Estas tareas programadas llaman a un procedimiento almacenado. Al llamar a un procedimiento almacenado, puede ejecutar el código que desee, por ejemplo, mantenimiento personalizado, edición de estadísticas, etc. Se pueden gestionar las tareas programadas: Ejecución sucesiva de múltiples tareas programadas: Si la tarea programada anterior no se completa, la nueva tarea programada no se ejecuta, y el servidor envía una notificación.
Tareas programadas en el Centro de Control HFSQL Crear una tarea programada En el Centro de Control HFSQL, las tareas programadas pueden definirse a nivel de servidor o de base de datos. Para crear una tarea programada: - Si es necesario, conéctese a un servidor HFSQL y abra la descripción del servidor o de una de sus bases de datos (haga doble clic en el nombre del servidor o de la base de datos en la estructura jerárquica).
- Haga clic en la pestaña "Elementos programados.
- En la cinta de opciones, en el grupo "Elementos programados", expanda "Nueva programación" y seleccione "Programar una tarea". Se inicia el asistente para crear una tarea programada.
- Seleccione el modo de ejecución de la tarea. La tarea puede ejecutarse:
- Periódicamente. A continuación, el asistente le permite definir la frecuencia de ejecución de la tarea.
- y/o al iniciar el servidor HFSQL. Si se selecciona esta opción, debe especificar si:
- la tarea bloquea otras tareas. En este caso, el servidor HFSQL será inaccesible mientras se ejecuta la tarea.
- la tarea debe ejecutarse en segundo plano. En este caso, el servidor HFSQL se puede utilizar tan pronto como se inicia.
- Seleccione:
- la base de datos que contiene el procedimiento almacenado que se va a ejecutar.
- el conjunto que contiene el procedimiento almacenado a ejecutar.
- el procedimiento almacenado a ejecutar.
Nota: Para conceder acceso a los datos a un procedimiento almacenado lanzado desde una tarea programada, debe utilizar la función HDeclareExternal. Esta función se utiliza para declarar las fuentes de datos que se utilizarán en los procesos del procedimiento almacenado. Cuando se lanza un procedimiento almacenado desde el Centro de Control HFSQL, no hay análisis actual y no se puede acceder a los datos HFSQL Cliente/Servidor. Si no se utiliza HDeclareExternal en el código del procedimiento almacenado, el procedimiento desencadenará un error fatal, notificado en el registro de eventos del sistema. Nota: Cuando un procedimiento almacenado se inicia con HExecuteProcedure desde una aplicación WINDEV, WEBDEV o WINDEV Mobile, utiliza el análisis de la aplicación y puede utilizar directamente los datos HFSQL Cliente/Servidor.
- Defina la frecuencia de la tarea: mes, día, hora.
- Dale una descripción a tu tarea programada y confírmala.
- La tarea programada aparece en la pestaña "Elementos programados" del Centro de Control HFSQL.
Eliminar una tarea programada Para eliminar una tarea programada: - Si es necesario, conéctese a un servidor HFSQL y abra la pestaña del servidor o de la base de datos correspondiente.
- Haga clic en la pestaña "Elementos programados.
- Seleccione la tarea programada que desea eliminar.
- En la cinta de opciones, en el grupo "Elementos programados", haga clic en "Eliminar".
También tiene la posibilidad de utilizar el menú contextual del elemento programado (opción "Suprimir").
Modificar una tarea programada Para modificar una tarea programada: - Si es necesario, conéctese a un servidor HFSQL y abra la pestaña del servidor o de la base de datos correspondiente.
- Haga clic en la pestaña "Elementos programados.
- Seleccione la tarea programada que desea modificar.
- En la cinta de opciones, en el grupo "Elementos programados", haga clic en "Editar".
También puede utilizar el menú contextual del elemento programado (opción "Editar"). - Aparece una ventana de descripción del elemento programado. Todas las características introducidas en el asistente se agrupan en varias pestañas:
- Pestaña "General": Define el tipo de tarea (copia de seguridad o procedimiento almacenado) y su estado (activo o inactivo).
- Pestaña "Programar": Establece las opciones de ejecución de la tarea programada (mes, día, hora, número de ejecuciones, ejecución al inicio).
Novedad versión 2025Pestaña "Historial de ejecución": Esta pestaña aparece una vez que la tarea programada se ha ejecutado automáticamente. Esta pestaña enumera las diferentes ejecuciones de la tarea programada, indicando: - fecha de inicio de la tarea,
- estado de la tarea: completada, en curso, fallida,
- duración,
- usuario que lanzó la tarea,
- si se lanzó manualmente (con HExecuteScheduling).
- Valide.
Crear una tarea programada Las tareas programadas se gestionan mediante programación utilizando variables de tipo hScheduledTask y varias funciones de WLanguage. Para crear mediante programación una tarea programada: - Cree una variable de tipo hScheduledTask y defina las distintas características de la tarea programada.
- Añadir la tarea programada HAddScheduling (o HAddTask).
Observaciones: - Para añadir una tarea programada, debe tener:
- los permisos para administrar las tareas (constante hRightsManageTask).
- los derechos para ejecutar el comando vinculado a la tarea programada.
- La tarea se ejecutará con las credenciales de usuario definidas por la conexión.
- Por razones de compatibilidad, también es posible crear una tarea programada para realizar copias de seguridad de la base de datos. Sin embargo, se recomienda crear una copia de seguridad programada. Para obtener más información, consulte ¿Cómo hacer copias de seguridad de bases de datos HFSQL Cliente/Servidor?.
Novedad versión 2025Historial de ejecución de tareas programadas Se crea un historial cuando la tarea programada se ejecuta automáticamente (o con HExecuteScheduling). Este historial puede manipularse mediante programación, utilizando una variable de tipo hSchedulingHistory y las siguientes funciones:
| | | Elimina el historial de ejecución de trabajos programados en un servidor HFSQL. | | Elimina el historial de ejecución de un trabajo programado en un servidor HFSQL. Este trabajo puede ser una tarea programada (procedimiento almacenado), una copia de seguridad, una optimización o una actualización de vista materializada. | | Obtiene el historial de ejecución de un trabajo programado en un servidor HFSQL. Este trabajo puede ser una tarea programada (procedimiento almacenado), copia de seguridad, optimización o actualización de una vista materializada. |
Manipulación de tareas programadas en WLanguage Las tareas programadas pueden manipularse utilizando: - funciones de tareas programadas:
| | HAddTask | Adds a scheduled task on the server defined by the connection. | HDeleteTask | Deletes a scheduled task from an HFSQL Client/Server server. | HInfoTask | Returns the characteristics of a scheduled task in a hScheduledTask variable]. | HListTask | Lists the scheduled tasks of an HFSQL Client/Server server for a given connection. | HManageTask | Activa o desactiva una tarea programada de un servidor HFSQL Client/Server. | HModifyTask | Modifies a scheduled task on the HFSQL server defined by the connection. |
- funciones programadas de los elementos (recomendado):
| | HAddScheduling | Adds a new scheduled item to an HFSQL server: scheduled task (stored procedure), backup, optimization or refresh of a materialized view. | HDeleteScheduling | Delete a scheduled item on an HFSQL server: scheduled task (stored procedure), backup, optimization, refresh of a materialized view. | HExecuteScheduling | Immediately executes a scheduled item regardless of its scheduling: scheduled task (stored procedure), backup, optimization, refresh of a materialized view. | HListScheduling | Lists scheduled elements defined on an HFSQL server: scheduled tasks (stored procedure), backup, optimization, refresh of a materialized view. | HModifyScheduling | Modify a scheduled item on an HFSQL server: scheduled task (stored procedure), backup, optimization, refresh of a materialized view. |
Ejemplo de uso de HDeclareExternal en un procedimiento almacenado El siguiente procedimiento declara un archivo de datos con HDeclareExternal para poder utilizarlo en una tarea programada: PROCEDURE NomDeLaProcédureStockée()
IF NOT HFileExist(MaConnexion, CODEPOSTAUX) THEN
IF NOT HDeclareExternal("CODEPOSTAUX.FIC", "CODEPOSTAUX") THEN
RETURN HErrorInfo()
END
END
RETURN ""
Ejemplo de ejecución de la prueba de un procedimiento almacenado El siguiente código se utiliza para ejecutar la prueba de un procedimiento almacenado en condiciones similares a las de su ejecución en una tarea programada:
HCloseAnalysis()
cnxProcedureStockeeHFSQL is Connection
cnxProcedureStockeeHFSQL.Provider = hAccessHFClientServer
cnxProcedureStockeeHFSQL.User = "ADMIN"
cnxProcedureStockeeHFSQL.MotDePasse = ""
cnxProcedureStockeeHFSQL.Server = "NomServeur:4900"
cnxProcedureStockeeHFSQL.Database = "NomBaseDeDonnées"
HOpenConnection(cnxProcedureStockeeHFSQL)
IF ErrorOccurred = True THEN
Error("Echec de l'ouverture de la connexion à la base HFSQL", HErrorInfo())
RETURN
END
sRes is string
sRes = HExecuteProcedure(cnxProcedureStockeeHFSQL, "NomDeLaProcédureStockée")
...
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|