Austauschen von EDIFACT-Nachrichten mithilfe von Workflows in Azure Logic Apps

Wenn Sie EDIFACT-Nachrichten in Workflows, die Sie mit Azure Logic Apps erstellen, senden und empfangen möchten, können Sie den EDIFACT-Connector verwenden. Dieser stellt Vorgänge bereit, die die EDIFACT-Kommunikation unterstützen und verwalten.

In diesem Leitfaden wird gezeigt, wie Sie einem bestehenden Logik-App-Workflow die EDIFACT-Aktionen für die Codierung und Decodierung hinzufügen. Wenn kein EDIFACT-Trigger verfügbar ist, können Sie jeden Trigger zum Starten des Workflows ausführen. In den Beispielen dieses Leitfadens wird der Anforderungstrigger verwendet.

Technische Referenz für den Connector

Der EDIFACT-Connector hat verschiedene Versionen, die auf dem Typ der Logik-App und der Hostumgebung basieren.

Logik-App Environment Connector-Version
Verbrauch Azure Logic Apps mit mehreren Mandanten Verwalteter EDIFACT-Connector (Standard): Der EDIFACT-Connector bietet nur Aktionen, aber Sie können jeden Trigger verwenden, der für Ihr Szenario funktioniert. Weitere Informationen finden Sie in der folgenden Dokumentation:

- Referenz zum verwalteten EDIFACT-Connector
- EDIFACT-Nachrichtenbeschränkungen
Standard Einzelmandanten-Azure Logic Apps und App Service-Umgebung v3 (nur Windows-Pläne) Integrierter EDIFACT-Connector (Vorschau) und verwalteter EDIFACT-Connector: Die integrierte Version unterscheidet sich wie folgt:

– Die intergrierte Version bietet nur Aktionen, aber Sie können jeden Trigger verwenden, der für Ihr Szenario funktioniert.

- Die integrierte Version kann direkt auf virtuelle Azure-Netzwerke zugreifen. Sie benötigen kein lokales Datengateway.

Weitere Informationen finden Sie in der folgenden Dokumentation:

- Referenz zum verwalteten EDIFACT-Connector
- Vorgänge für den integrierten EDIFACT-Connector
- EDIFACT-Nachrichtenbeschränkungen

Integrierte EDIFACT-Vorgänge (nur Standard-Workflows – Vorschau)

Der integrierte EDIFACT-Connector (Vorschau) enthält die folgenden Aktionen, die denen des Gegenstücks ähneln, dem verwalteten EDIFACT-Connector, abgesehen von den Ausnahmen unter Einschränkungen und bekannte Probleme.

Einschränkungen und bekannte Probleme

  • Integrierter EDIFACT-Connector (Vorschau)

    • Diese Funktion befindet sich in der Vorschauphase und unterliegt den Zusätzlichen Nutzungsbedingungen für Microsoft Azure-Vorschauversionen.

    • Die Aktionen dieses Connectors unterstützen derzeit Nutzdaten von bis zu 100 MB.

    • Die Vorschauaktion EDIFACT Decode enthält derzeit nicht die folgenden Funktionen:

      • Überprüfung auf doppelten Austausch, doppelte Gruppen und doppelte Transaktionssatzkontrollnummern, falls konfiguriert

      • Speichern des gesamten Austauschs

      Andernfalls verfügen die Vorschauversionen der integrierten Connectoraktionen EDIFACT Encode und EDIFACT Decode über Funktionen, die ihren Gegenstücken im verwalteten EDIFACT-Connector ähneln.

    • Die Aktionen dieses Connectors unterstützen derzeit keine Austauschvorgänge mit mehreren Transaktionen oder Batchnachrichten.

    • Die Aktionen dieses Connectors geben derzeit keine EDI-spezifische Nachverfolgung aus.

Voraussetzungen

  • Ein Azure-Konto und ein Azure-Abonnement. Sollten Sie noch kein Abonnement besitzen, können Sie sich für ein kostenloses Azure-Konto registrieren.

  • Eine Integrationskontoressource, in der Sie Artefakte wie Handelspartner, Vereinbarungen, Zertifikate usw. für die Verwendung in Ihrer Unternehmensintegration und in B2B-Workflows definieren und speichern. Diese Ressource muss die folgenden Anforderungen erfüllen:

    • Sowohl Ihre Integrationskonto- als auch Ihre Logik-App-Ressource müssen im selben Azure-Abonnement und in derselben Azure-Region vorliegen.

    • Es definiert mindestens zwei Handelspartner, die an dem EDIFACT-Vorgang teilnehmen, der in Ihrem Workflow verwendet wird. Die Definitionen für beide Partner müssen denselben Qualifizierer für die Geschäftsidentität verwenden, der für dieses Szenario ZZZ - Mutually Defined lautet.

    • Es definiert eine EDIFACT-Vereinbarung zwischen den Handelspartnern, die an Ihrem Workflow teilnehmen. Jede Vereinbarung erfordert sowohl einen Host- als auch einen Gastpartner. Der Inhalt der Nachrichten zwischen Ihnen und dem*der Partner*in muss mit dem Vereinbarungstyp übereinstimmen. Informationen zu den Vereinbarungseinstellungen, die beim Empfangen und Senden von Nachrichten verwendet werden sollen, finden Sie unter EDIFACT-Nachrichteneinstellungen.

      Wichtig

      Der EDIFACT-Connector unterstützt nur UTF-8-Zeichen. Wenn Ihre Ausgabe unerwartete Zeichen enthält, überprüfen Sie, ob Ihre EDIFACT-Nachrichten den UTF-8-Zeichensatz verwenden.

  • Basierend darauf, ob Sie an einem Verbrauchs- oder Standard-Logik-App-Workflow arbeiten, erfordert Ihre Logik-App-Ressource möglicherweise einen Link zu Ihrem Integrationskonto:

    Logik-App-Workflow Link erforderlich?
    Nutzung Die Verbindung und Verknüpfung mit dem Integrationskonto sind erforderlich. Sie können die Verbindung erstellen, wenn Sie Ihrem Workflow den EDIFACT-Vorgang hinzufügen.
    Standard Es ist eine Verbindung mit dem Integrationskonto erforderlich, aber kein Link. Sie können die Verbindung erstellen, wenn Sie Ihrem Workflow den EDIFACT-Vorgang hinzufügen.
  • Die Logik-App-Ressource und der Workflow, in der bzw. dem Sie die EDIFACT-Vorgänge verwenden möchten.

    Weitere Informationen finden Sie in der folgenden Dokumentation:

Codierung von EDIFACT-Nachrichten

Die verwaltete EDIFACT-Connectoraktion mit dem Namen In EDIFACT-Nachricht codieren und die integrierte EDIFACT-Connectoraktion namens EDIFACT Encode führen die folgenden Aufgaben aus, abgesehen von den Ausnahmen unter Einschränkungen und bekannte Probleme:

  • Lösen Sie die Vereinbarung durch Abgleich von Senderqualifizierer und -bezeichner sowie von Empfängerqualifizierer und -bezeichner auf.

  • Serialisieren Sie den elektronischen Datenaustausch (Electronic Data Interchange, EDI), der XML-codierte Nachrichten im Austausch in EDI-Transaktionssätze konvertiert.

  • Wenden Sie Header- und Nachspannsegmente für den Transaktionssatz an.

  • Generieren Sie eine Austauschkontrollnummer, eine Gruppenkontrollnummer und eine Transaktionssatz-Kontrollnummer für jeden ausgehenden Austausch.

  • Ersetzen Sie Trennzeichen in den Nutzlastdaten.

  • Überprüfen Sie EDI- und partnerspezifische Eigenschaften, z. B. das Schema für Transaktionssatz-Datenelemente anhand des Nachrichtenschemas, Transaktionssatz-Datenelemente und die erweiterte Überprüfung für Transaktionssatz-Datenelemente.

  • Generieren Sie ein XML-Dokument für jeden Transaktionssatz.

  • Fordern Sie eine technische Bestätigung, Funktionsbestätigung oder beides an, sofern konfiguriert.

    • Als technische Bestätigung kennzeichnet die CONTRL-Nachricht den Empfang für einen Austauschvorgang.

    • Als Funktionsbestätigung kennzeichnet die CONTRL-Nachricht die Annahme oder Ablehnung für den empfangenen Austausch, die Gruppe oder Nachricht, einschließlich einer Liste von Fehlern oder nicht unterstützten Funktionen.

  1. Öffnen Sie im Azure-Portal Ihre Logik-App-Ressource und den Workflow im Designer.

  2. Führen Sie im Designer diese allgemeinen Schritte aus, um Ihrem Workflow die EDIFACT-Aktion mit dem Namen In EDIFACT-Nachricht nach Vereinbarungsname codieren hinzuzufügen.

    Hinweis

    Wenn Sie stattdessen die Aktion In EDIFACT-Nachricht nach Identitäten codieren verwenden möchten, müssen Sie später andere Werte angeben, z. B. Absenderbezeichner und Empfängerbezeichner, der in Ihrer EDIFACT-Vereinbarung angegeben sind. Sie müssen auch die zu codierende XML-Nachrichtangeben, bei der es sich um die Ausgabe des Triggers oder einer vorherigen Aktion handeln kann.

  3. Geben Sie die folgenden Verbindungsinformationen für Ihr Integrationskonto an:

    Eigenschaft Erforderlich BESCHREIBUNG
    Verbindungsname Ja Ein Name für die Verbindung
    Integrationskonto Ja Wählen Sie in der Liste der verfügbaren Integrationskonten das Konto aus, das Sie nutzen möchten.

    Zum Beispiel:

    Screenshot des Azure-Portals, des Consumption-Workflows und des Verbindungsfelds für Aktion namens „In EDIFACT-Nachricht codieren“ anhand des Vertragsnamens

  4. Wählen Sie Erstellen, wenn Sie fertig sind.

  5. Geben Sie in der EDIFACT-Aktion die folgenden Eigenschaftswerte an:

    Eigenschaft Erforderlich BESCHREIBUNG
    Name der EDIFACT-Vereinbarung Ja Die zu verwendende EDIFACT-Vereinbarung.
    Zu codierende XML-Nachricht Ja Der Geschäftsbezeichner für den Absender der Nachricht, wie in Ihrer EDIFACT-Vereinbarung angegeben
    Weitere Parameter No Dieser Vorgang umfasst die folgenden weiteren Parameter:

    - Datenelementtrennzeichen
    - Freigabeindikator
    - Komponententrennzeichen
    - Wiederholungstrennzeichen
    - Segmentabschlusszeichen
    - Segmentabschlusszeichensuffix
    - Dezimalindikator

    Weitere Informationen finden Sie unter EDIFACT-Nachrichteneinstellungen.

    Die zu codierenden XML-Nachrichtennutzdaten können beispielsweise der Textteil der Inhaltsausgabe vom Anforderungstrigger sein:

    Screenshot: Consumption-Workflow, Aktion „In EDIFACT-Nachricht codieren“ nach Vertragsname und Nachrichtencodierungseigenschaften

  6. Speichern Sie den Workflow.

Decodieren von EDIFACT-Nachrichten

Die verwaltete EDIFACT-Connectoraktion mit dem Namen EDIFACT-Nachricht decodieren und die integrierte EDIFACT-Connectoraktion namens EDIFACT Decode führen die folgenden Aufgaben aus, abgesehen von den Ausnahmen unter Einschränkungen und bekannte Probleme:

  • Überprüfen Sie den Umschlag anhand der Handelspartnervereinbarung.

  • Lösen Sie die Vereinbarung durch Abgleich von Senderqualifizierer und -bezeichner sowie von Empfängerqualifizierer und -bezeichner auf.

  • Teilen Sie einen Austausch in mehrere Transaktionssätze auf, wenn der Austausch entsprechend der Empfangseinstellungen der Vereinbarung mehr als eine Transaktion aufweist.

  • Disassemblieren des Austauschs

  • Überprüfen Sie EDI- (Electronic Data Interchange) und partnerspezifische Eigenschaften, z. B. die Struktur des Austauschumschlags, das Umschlagschema anhand des Kontrollschemas, das Schema für Transaktionssatz-Datenelemente anhand des Nachrichtenschemas und die erweiterte Überprüfung für Transaktionssatz-Datenelemente.

  • Stellen Sie sicher, dass die Austausch-, Gruppen- und Transaktionssatz-Kontrollnummern keine Duplikate (nur verwaltete Connectors) sind, falls konfiguriert, beispielsweise:

    • Gleicht die Austauschkontrollnummer mit zuvor empfangenen Austauschvorgängen ab.

    • Überprüfen Sie die Gruppenkontrollnummer anhand anderer Gruppenkontrollnummern im Austausch.

    • Überprüfen Sie die Transaktionssatz-Kontrollnummer anhand anderer Transaktionssatz-Kontrollnummern in dieser Gruppe.

  • Trennen Sie den Austausch in Transaktionssätze, oder behalten Sie den gesamten Austausch (nur verwaltete Connectors) bei, z. B.:

    • Trennen des Austauschs in Transaktionssätze – Transaktionssätze bei Fehler anhalten

      Die Decodierungsaktion trennt den Austausch in Transaktionssätze und analysiert die einzelnen Transaktionssätze. Die Aktion gibt nur die Transaktionssätze, die die Überprüfung nicht bestehen, in badMessages und die restlichen Transaktionssätze in goodMessages aus.

    • Trennen des Austauschs in Transaktionssätze – Austausch bei Fehler anhalten

      Die Decodierungsaktion trennt den Austausch in Transaktionssätze und analysiert die einzelnen Transaktionssätze. Wenn mindestens ein Transaktionssatz im Austausch die Überprüfung nicht besteht, gibt die Aktion alle Transaktionssätze in diesem Austausch in badMessages aus.

    • Austausch beibehalten – Transaktionssätze bei Fehler anhalten

      Die Decodierungsaktion behält den Austausch bei und verarbeitet den gesamten Batchaustausch. Die Aktion gibt nur die Transaktionssätze, die die Überprüfung nicht bestehen, in badMessages und die restlichen Transaktionssätze in goodMessages aus.

    • Austausch beibehalten – Austausch bei Fehler anhalten

      Die Decodierungsaktion behält den Austausch bei und verarbeitet den gesamten Batchaustausch. Wenn mindestens ein Transaktionssatz im Austausch die Überprüfung nicht besteht, gibt die Aktion alle Transaktionssätze in diesem Austausch in badMessages aus.

  • Generieren Sie eine technische Bestätigung, Funktionsbestätigung oder beides, sofern konfiguriert.

    • Eine technische Bestätigung oder die CONTRL-Bestätigung, die die Ergebnisse einer Syntaxüberprüfung des vollständig empfangenen Austauschs meldet.

    • Eine Funktionsbestätigung, die die Annahme oder Ablehnung für den empfangenen Austausch oder die empfangene Gruppe bestätigt.

  1. Öffnen Sie im Azure-Portal Ihre Logik-App-Ressource und den Workflow im Designer.

  2. Führen Sie im Designer diese allgemeinen Schritte aus, um Ihrem Workflow die EDIFACT-Aktion mit dem Namen EDIFACT-Nachricht decodieren hinzuzufügen.

  3. Geben Sie die folgenden Verbindungsinformationen für Ihr Integrationskonto an:

    Eigenschaft Erforderlich BESCHREIBUNG
    Verbindungsname Ja Ein Name für die Verbindung
    Integrationskonto Ja Wählen Sie in der Liste der verfügbaren Integrationskonten das Konto aus, das Sie nutzen möchten.

    Zum Beispiel:

    Screenshot des Consumption-Workflow-Designers und Verbindungsbereichs für die Aktion „EDIFACT-Nachricht decodieren“

  4. Wählen Sie Erstellen, wenn Sie fertig sind.

  5. Geben Sie in der EDIFACT-Aktion die folgenden Eigenschaftswerte an:

    Eigenschaft Erforderlich BESCHREIBUNG
    Zu decodierende EDIFACT-Flatfilenachricht Ja Die zu decodierende XML-Flatfilenachricht.
    Weitere Parameter No Dieser Vorgang umfasst die folgenden weiteren Parameter:

    - Komponententrennzeichen
    - Datenelementtrennzeichen
    - Freigabeindikator
    - Wiederholungstrennzeichen
    - Segmentabschlusszeichen
    - Segmentabschlusszeichensuffix
    - Dezimalindikator
    - Nutzdatenzeichensatz
    - Segmentabschlusszeichensuffix
    - Austausch beibehalten
    - Austausch bei Fehler anhalten

    Weitere Informationen finden Sie unter EDIFACT-Nachrichteneinstellungen.

    Die zu decodierenden XML-Nachrichtennutzdaten können beispielsweise der Textteil der Inhaltsausgabe vom Anforderungstrigger sein:

    Screenshot: Consumption-Workflow, Aktion „EDIFACT-Nachricht decodieren“ und Nachrichtendecodierungseigenschaften

Behandeln von UNH2.5-Segmenten in EDIFACT-Dokumenten

In einem EDIFACT-Dokument wird das UNH2.5-Segment für die Schemasuche verwendet. In der folgenden exemplarischen EDIFACT-Nachricht ist das UNH-Feld beispielsweise EAN008:

UNH+SSDD1+ORDERS:D:03B:UN:EAN008

Führen Sie die folgenden Schritte aus, um ein EDIFACT-Dokument zu behandeln oder eine EDIFACT-Nachricht zu verarbeiten, das bzw. die über ein UN2.5-Segment verfügt:

  1. Aktualisieren Sie ein Schema, oder stellen Sie ein Schema bereit, das über den UNH2.5-Stammknotennamen verfügt.

    Angenommen, der Schemastammname für das exemplarische UNH-Feld lautet beispielsweise EFACT_D03B_ORDERS_EAN008. Für jedes Element vom Typ D03B_ORDERS, das über ein anderes UNH2.5-Segment verfügt, muss ein eigenes Schema bereitgestellt werden.

  2. Fügen Sie im Azure-Portal das Schema Ihrer Integrationskontoressource oder Logik-App-Ressource hinzu, je nachdem, ob Sie über einen Logik-App-Workflow vom Typ „Consumption“ oder „Standard“ verfügen.

  3. Laden Sie unabhängig davon, ob Sie die EDIFACT-Aktion für die Decodierung oder Codierung verwenden, Ihr Schema hoch, und richten Sie die Schemaeinstellungen in den Abschnitten Empfangseinstellungen bzw. Sendeeinstellungen Ihrer EDIFACT-Vereinbarung ein.

  4. Zur Bearbeitung Ihrer EDIFACT-Vereinbarung wählen Sie im Bereich Vereinbarungen Ihre Vereinbarung aus. Wählen Sie in der Symbolleiste des Bereichs Vereinbarungen die Option Als JSON bearbeiten aus.

    • Suchen Sie im Abschnitt receiveAgreement der Vereinbarung den Abschnitt schemaReferences, und fügen Sie den UNH2.5-Wert hinzu.

      Screenshot, der das Azure-Portal mit dem Abschnitt „receiveAgreement“ einer EDIFACT-Vereinbarung im JSON-Editor zeigt, wobei der Abschnitt „schemaReferences“ hervorgehoben ist.

    • Suchen Sie im Abschnitt sendAgreement der Vereinbarung den Abschnitt schemaReferences, und fügen Sie den UNH2.5-Wert hinzu.

      Screenshot, der das Azure-Portal mit dem Abschnitt „sendAgreement“ einer EDIFACT-Vereinbarung im JSON-Editor zeigt, wobei der Abschnitt „schemaReferences“ hervorgehoben ist.

Nächste Schritte