Ga naar inhoud

Pagina's uitbreiden met de Document Dispatch Factbox

Deze documentatie beschrijft hoe je een pagina in Business Central kunt uitbreiden met de Document Dispatch Factbox. De factbox wordt gebruikt om een overzicht te krijgen van de subitems die zijn ingesteld, zoals beschikbaarheid en dergelijke, en om documenten te versturen als ze correct zijn ingesteld.

Er zijn twee manieren om dit te doen:

  1. Als u een aangepaste pagina gebruikt, kan de code direct aan de pagina worden toegevoegd.
  2. Als je bestaande pagina's wilt uitbreiden, kun je een pagina-extensie maken die de code uitvoert.

Vereisten

Aan de volgende vereisten moet worden voldaan:

  • De Document Dispatch module moet gelicenseerd zijn.
  • CORE moet als referentie beschikbaar zijn in de extensie.
  • Documentverzending moet als referentie beschikbaar zijn in de extensie.

Uitbreiding van een Business Central pagina met de Document Dispatch Factbox

Kaart

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;
}

Lijst

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

Met de Document Dispatch Factbox kunnen documenten worden verzonden voor de gewenste items. Het zorgt ervoor dat documenten naar de juiste ontvangers worden verzonden op basis van de geconfigureerde verzendlogica.