For the complete documentation index, see llms.txt. This page is also available as Markdown.

Integrationsbeispiele

Die folgenden Beispiele verwenden Objekt-IDs aus einem fiktiven Consumer-Bereich. Sie müssen an den eigenen Bereich und die eigenen Präfixe angepasst werden.

Pakete automatisch erzeugen

codeunit 50130 "My DHL Packing"
{
    procedure CreateSuggestedPackages(OrderNo: Code[20]; BoxCode: Code[20])
    var
        SalesHeader: Record "Sales Header";
        DhlPackingMgt: Codeunit "SOUDHL Packing Mgt";
    begin
        SalesHeader.Get(SalesHeader."Document Type"::Order, OrderNo);

        // 0 = Paketanzahl automatisch bestimmen.
        DhlPackingMgt.CreatePackages(SalesHeader, 0, BoxCode);
    end;
}

Für einen expliziten Modus:

DhlPackingMgt.CreatePackagesWithPackingMode(
    SalesHeader,
    0,
    BoxCode,
    Enum::"SOUDHL Packing Mode"::"Smart Distribute");

Die Methode kann bei unvollständigen Stammdaten oder nicht passenden Artikeln einen AL-Fehler auslösen. Für unbeaufsichtigte Prozesse sollte der Aufrufer eine klar definierte Fehlerbehandlung verwenden.

Packing-Eingaben über Event ändern

Das Event läuft nach der Standardauflösung und vor Validierung. Ein Fehler bricht ab, bevor Pending-Pakete gelöscht werden.

Empfänger vor dem Persistieren normalisieren

Der geänderte Header wird anschließend vom Connector gespeichert. Name, Adresse, E-Mail und Telefon nicht protokollieren.

Label für ein vorhandenes Paket erzeugen

Für Hintergrundprozesse sollte die Warnung protokolliert oder an den aufrufenden Prozess zurückgegeben werden, statt Message zu verwenden.

Labelergebnis ohne Failure-Event auswerten

Bei Erfolg läuft das Event nach dem Commit(). Ein Subscriber-Fehler rollt das Label nicht zurück.

Express-Produktcode bestimmen

Live-Express-Preis abrufen

OnBeforeGetRate kann Destination, Maße oder Produktcode ändern. OnAfterGetRate läuft auch dann, wenn Express nicht konfiguriert ist.

Express-Request über Event ergänzen

Dieser Subscriber läuft nur für Express. Das JSON darf nicht protokolliert werden.

Parcel-DE-Request ergänzen

Pflichtknoten nicht entfernen und keine Credentials verwalten. Fachliche Header-Änderungen gehören bevorzugt nach OnBeforeGenerateLabel.

Eigene Versandoberfläche verwenden

Produktiv sollte das Ausblenden von einer eigenen Setup-Option abhängen, damit Administratoren das Standard-DHL-UI bei Bedarf wieder aktivieren können.

Lookup auf DHL-Boxen

Lookups sind zulässig. Direkte Änderungen an DHL-Boxen aus der Consumer-App sollten vermieden werden.