Tareas en segundo plano en páginas de Business Central
A partir de la versión Microsoft Dynamics 365 Business Central 2019 release wave 2 se introduce una forma para que los desarrolladores de AL comencemos a programar usando conceptos multitarea / asíncronos. Por primera vez, los desarrolladores ahora podemos calcular operaciones costosas en una página sin bloquear la interfaz de usuario y luego actualizar la interfaz de usuario una vez que se completa el cálculo.
Detalles de la función
Una tarea en segundo plano de página puede ejecutar una unidad de código (sin una IU) en una sesión secundaria de solo lectura de la sesión de página . Al finalizar la tarea, se invoca un activador de finalización con el resultado en la sesión de la página. Si la página se cierra antes de que se complete la tarea o se cambia la ID del registro de la página, la tarea se cancela.
Método «EnqueueBackgroundTask»
Crea y pone en cola una tarea en segundo plano que ejecuta la unidad de código especificada (sin una IU) en una sesión secundaria de solo lectura de la sesión de página.
Si la tarea se completa correctamente, se invoca el desencadenador OnPageBackgroundTaskCompleted . Si se produce un error, se invoca el activador OnPageBackgroundTaskError . Si la página se cierra antes de que finalice la tarea, o si la ID de registro de la página cambia, la tarea se cancela.
Invocar el método «EnqueueBackgroundTask»
Page.EnqueueBackgroundTask (var TaskId : Integer, CodeunitId : Integer [, var Parámetros : Dictionary of [Text, Text]] [, Timeout : Integer] [, ErrorLevel : PageBackgroundTaskErrorLevel])
Cómo crear una tarea background de página
Para obtener más detalles y ejemplos, puede leer:
Espero que os sirva de ayuda. ?
Programación Dynamics
ABD Consultoría y Soluciones Informáticas