Aller au contenu

Extension des pages avec Document Dispatch Factbox

Cette documentation décrit comment étendre une page dans Business Central avec la Document Dispatch Factbox. La boîte à outils est utilisée pour obtenir une vue d'ensemble des sous-rubriques qui ont été configurées, telles que la disponibilité ou autre, et pour envoyer des documents s'ils ont été configurés correctement.

Il y a deux façons de procéder :

  1. Si vous utilisez une page personnalisée, le code peut être ajouté directement à la page.
  2. Si vous souhaitez étendre des pages existantes, vous pouvez créer une extension de page qui exécute le code.

Exigences

Les conditions suivantes doivent être remplies :

  • Le module Document Dispatch doit être sous licence.
  • CORE doit être disponible dans l'extension en tant que référence.
  • Le module Document Dispatch doit être disponible dans l'extension en tant que référence.

Extension d'une page Business Central avec la Factbox Document Dispatch

Carte

pageextension 5487161 "SIM_EDS PostedSalesInvoiceExt" extends "Posted Sales Invoice" //132
{
    layout
    {
        addfirst(FactBoxes)
        {
            part(SIM_EDSFB; "SIM_EDS FB")
            {
                ApplicationArea = All;
            }
        }
    }
    trigger OnAfterGetCurrRecord()
    var
        LocalCodeunitSIMCOREMgt: Codeunit "SIM_CORE Mgt";
    begin
        if not LocalCodeunitSIMCOREMgt.CheckPermissions(UserSecurityId(), 'SIM_EDS USER | SIM_EDS ADMIN | SUPER') then exit;
        CurrPage.SIM_EDSFB.Page.SetVariant(Rec);
    end;
}

Liste

pageextension 5487166 "SIM_EDS PostedSalesInvoicesExt" extends "Posted Sales Invoices" //143
{
    layout
    {
        addfirst(FactBoxes)
        {
            part(SIM_EDSFB; "SIM_EDS FB")
            {
                ApplicationArea = All;
            }
        }
    }

    trigger OnAfterGetCurrRecord()
    var
        TempLocalRecordSIMEDSBusinessPartner: Record "SIM_EDS Business Partner" temporary;
        TempLocalRecordSIMEDSDynamicBP: Record "SIM_EDS Dynamic BP" temporary;
        LocalRecordSalesInvoiceHeader: Record "Sales Invoice Header";
        TempLocalRecordSIMEDSRecord: Record "SIM_EDS Record" temporary;
        LocalRecordSIMEDSSetup: Record "SIM_EDS Setup";
        LocalCodeunitSIMEDSMgt: Codeunit "SIM_EDS Mgt";
        LocalCodeunitSIMCOREMgt: Codeunit "SIM_CORE Mgt";
        LocalRecordRef: RecordRef;
        LocalDynamicBusinessMappingExistsBoolean: Boolean;
        LocalExtendedBusinessMappingExistsBoolean: Boolean;
        LocalMultipleOutputTypesExistsBoolean: Boolean;
    begin
        if not LocalCodeunitSIMCOREMgt.CheckPermissions(UserSecurityId(), 'SIM_EDS USER | SIM_EDS ADMIN | SUPER') then exit;
        CurrPage.SIM_EDSFB.Page.SetVariant(Rec);

        if not LocalRecordSIMEDSSetup.Get() then exit;

        CurrPage.SetSelectionFilter(LocalRecordSalesInvoiceHeader);

        if LocalRecordSalesInvoiceHeader.FindSet() then
            repeat
                LocalRecordRef.GetTable(LocalRecordSalesInvoiceHeader);
                LocalCodeunitSIMEDSMgt.GetRecords(LocalRecordRef, TempLocalRecordSIMEDSRecord);

                LocalCodeunitSIMEDSMgt.GetRecordAssignedData(
                    LocalRecordRef,
                    true,
                    LocalDynamicBusinessMappingExistsBoolean,
                    LocalExtendedBusinessMappingExistsBoolean,
                TempLocalRecordSIMEDSRecord,
                    TempLocalRecordSIMEDSBusinessPartner,
                    TempLocalRecordSIMEDSDynamicBP,
                    true);

                LocalCodeunitSIMEDSMgt.CheckOutputTypes(LocalRecordRef, TempLocalRecordSIMEDSRecord, GlobalIsDownloadEnabledBoolean, LocalMultipleOutputTypesExistsBoolean);
            until LocalRecordSalesInvoiceHeader.Next() = 0;
    end;

    var
        GlobalIsDownloadEnabledBoolean: Boolean;

}

Info

Le Document Dispatch Factbox permet d'envoyer des documents pour les entrées souhaitées. Elle garantit que les documents sont envoyés aux bons destinataires en fonction de la logique d'envoi configurée.