Ejercicio: Crear una notificación
Escenario
Desea solicitar información básica de la empresa mediante la característica Configuración asistida cuando falta información en Microsoft Dynamics 365 Business Central.
Tareas
Crear una codeunit.
Agregar una función para abrir el Asistente de información de la empresa.
Crear un suscriptor al OnOpenPageEvent de la página Pedido de venta.
Enviar una notificación si la información de la compañía no tiene valor de nombre o correo electrónico.
Pasos
Seleccione Archivo > Nuevo archivo y, a continuación, Archivo > Guardar para guardar este archivo. Utilice el nombre de archivo NotificationCompanyInfo.CodeUnit.al.
Cree una nueva codeunit en este archivo mediante el uso de fragmentos de código. Introduzca tcodeunit y luego pulse la tecla Tab.
Cambie el Id. a 50131 y el nombre a Información de la empresa de notificación.
Cree un procedimiento público con el nombre ShowCompanyWizard.
Agregue un parámetro denominado TheNotification de tipo Notificación.
Agregue código al procedimiento para abrir la página Asistente de información de la empresa.
procedure ShowCompanyInfoWizard(TheNotification: Notification) begin Page.Run(Page::"Assisted Company Setup Wizard"); end;Cree un eventsubscriber para la función OnOpenPageEvent en la página 42, Pedido de venta.
Agregue código que comprobará si el campo Nombre o Correo electrónico de la tabla Información de empresa está vacío. Si está vacío, debe enviar una notificación.
Agregue una acción a la notificación que llama al ShowCompanyInfoWizard.
[EventSubscriber(ObjectType::Page, Page::"Sales Order", 'OnOpenPageEvent', '', false, false)] local procedure CheckInfoOnOpenSalesOrder(var Rec: Record "Sales Header") var CompanyInformation: Record "Company Information"; CompanyNotification: Notification; begin if CompanyInformation.Get() then if (CompanyInformation.Name <> '') and (CompanyInformation."E-mail" <> '') then exit; CompanyNotification.Id := CreateGuid(); CompanyNotification.Message := 'Company Information is missing.'; CompanyNotification.AddAction('Open Company Information', Codeunit::"Notification Company Info", 'ShowCompanyInfoWizard'); CompanyNotification.Send(); end;Abra el archivo launch.json en la carpeta .vscode. Establezca la configuración startupOjbectId en 42 y la configuración startupObjectType en Página.
Publique su extensión en el espacio aislado. Seleccione Ver > Paleta de comandos (Ctrl+Mayús+P).
Introduzca AL: Publicar en el cuadro de búsqueda (o pulse la tecla de acceso directo F5) y luego seleccione el comando en la lista.
Compruebe que se inicia la aplicación Microsoft Dynamics 365 Business Central y que aparece la página Pedido de venta.
Puede probar su extensión eliminando el valor del correo electrónico de la página de información de la empresa. Busque información de la compañía y elimine el valor del correo electrónico y, a continuación, vuelva a abrir un pedido de ventas. Debería aparecer una notificación.