Table of Contents

Eigene Adressen definieren

report Belege können bis zu drei Adressen darstellen. Diese ermittelt der Standard basierend auf der Dokumentenart bzw. der Tabelle die im Belegkopf benutzt wird. Sollen diese Standard-Adressen nicht genutzt werden, oder Sie benötigen für einen selbst erstellen Report eigene Adressen nutzen Sie einen Code wie beschrieben.

[EventSubscriber(ObjectType::Codeunit, Codeunit::"RPT_Report Functions", 'CustomAddresses', '', true, true)]
local procedure CustomAddress(var SkipDefaultAddress: Boolean; ReportObjectSetup: Record "RPT_Object Setup"; var AddressCaption: Text; var CompareAddr: array[8] of Text; var TmpAddr: array[8] of Text; VarRec: Variant; Which: Option Address1,Address2,Address3)
var
    SalesHeader: Record "Sales Header";
    FormatAddr: Codeunit "Format Address";
begin
    if ReportObjectSetup."Report ID" <> Report::"My Custom Report" then
        exit;

    clear(AddressCaption);
    SalesHeader := VarRec;
    case which of
        which::Address1:
            FormatAddr.SalesHeaderShipTo(TmpAddr, CompareAddr, VarRec);
        which::Address2:
            begin
                FormatAddr.SalesHeaderShipTo(CompareAddr, TmpAddr, VarRec);
                FormatAddr.SalesHeaderBillTo(TmpAddr, VarRec);
                AddressCaption := 'Address 2 Caption';
            end;
        which::Address3:
            begin
                FormatAddr.SalesHeaderShipTo(CompareAddr, TmpAddr, VarRec);
                FormatAddr.SalesHeaderSellTo(TmpAddr, VarRec);
                AddressCaption := 'Address 3 Caption';
            end;
    end;
    SkipDefaultAddress := true;
end;

Diese Funktion kann verwendet werden, um die Werte und die Beschriftung für jede der drei möglichen Adressen des Berichts zu erhalten.

Parameter:

  • SkipDefaultAddress: Boolean um dem Addon zu sagen, das die Adresse nicht weiter gesucht werden soll.
  • ReportObjectSetup: Einrichtungen für den den aktuellen Report
  • AddressCaption: Name / Beschriftung der Adresse. Wird nur von den Adressen 2 und 3 verwendet.
  • TmpAddr: Die gewünschte Adresse als Array
  • CompareAddr: Eine zusätzliche Adresse (normalerweise Adresse 1) als Vergleich zu einer zweiten Adresse.
  • VarRec: In dieser Variable ist der aktuell verarbeitet Datensatz gespeichert.
  • Which: Optionswert, nach welcher Adresse gesucht werden soll.

Navigation