Freigeben über


Automatisieren von B2B-Nachrichten zwischen Handelspartnern mithilfe von Workflows in Azure Logic Apps

Gilt für: Azure Logic Apps (Verbrauch + Standard)

Für Business-to-Business-Integrationen (B2B) können Sie die Kommunikation zwischen Handelspartnern automatisieren, indem Sie Workflows mit B2B-Artefakten und Branchenstandardprotokollen in Azure Logic Apps erstellen.

Sie können beispielsweise ein Integrationskonto erstellen, um Artefakte wie Handelspartner, Vereinbarungen, Karten und Schemas zu definieren. Workflows unterstützen Protokolle wie AS2, X12, EDIFACT und RosettaNet. Erstellen Sie End-to-End-Integrationen, indem Sie diese B2B-Funktionen mit mehr als 1.400 Connectors kombinieren, die in Azure Logic Apps verfügbar sind, z. B. Office 365 Outlook, SQL Server und Salesforce.

In diesem Handbuch wird gezeigt, wie Sie einen B2B-Beispielworkflow erstellen, der die folgenden Aufgaben ausführen kann:

  • Empfangen von HTTPS-Anforderungen mit dem Request-Trigger namens "Wenn eine HTTP-Anforderung empfangen wird".
  • Decodieren Sie eingehende Nachrichteninhalte mit der AS2 (v2) -Decodierungsaktion und der X12-Decodierungsaktion .
  • Geben Sie eine Antwort an den Aufrufer mit der Antwortaktion zurück.

Voraussetzungen

  • Ein Azure-Konto und ein Azure-Abonnement. Erhalten Sie ein kostenloses Azure-Konto.

  • Die Logik-App-Ressource und der leere Workflow, in dem Sie die B2B-Integration in diesem Beispiel erstellen möchten.

    Die AS2 (v2) und X12 Vorgänge enthalten keine Trigger. Ihr Workflow kann mit jedem Trigger beginnen oder eine Aktion zum Empfangen von Nachrichten verwenden.

    Die Beispiele in diesem Artikel verwenden den Anforderungstrigger namens "Wenn eine HTTP-Anforderung empfangen wird".

    Weitere Informationen finden Sie unter:

  • Eine Ressource für das Integrationskonto zum Definieren und Speichern von Artefakten für Unternehmensintegrationen und B2B-Workflows.

    • Sowohl die Integrationskonto- als auch die Logik-App-Ressource müssen in demselben Azure-Abonnement und in derselben Azure-Region vorhanden sein.

    • Definiert mindestens zwei Handelspartner in Ihrem Integrationskonto. Die Definitionen für beide Partner müssen denselben Geschäftsidentitätsqualifizierer wie AS2, X12, EDIFACT oder RosettaNet verwenden.

    • Definiert eine AS2-Vereinbarung und eine X12-Vereinbarung zwischen den Handelspartnern, die an Ihrem Workflow teilnehmen. Jede Vereinbarung erfordert sowohl einen Host- als auch einen Gastpartner.

      Der Inhalt in den Nachrichten zwischen den Partnern muss mit dem Vertragstyp übereinstimmen. Informationen zu den Vereinbarungseinstellungen, die beim Empfangen und Senden von Nachrichten verwendet werden sollen, finden Sie unter:

  • Bevor Sie mit der Arbeit mit den AS2- und X12-Vorgängen beginnen, müssen Sie Ihre Verbrauchslogik-App verknüpfen oder Ihre Standardlogik-App mit dem Integrationskonto verknüpfen, damit Sie mit Artefakten wie Handelspartnern und Vereinbarungen arbeiten können. Sie können ein Integrationskonto mit mehreren Ressourcen der Verbrauchs- oder Standardlogik-App verknüpfen, um dieselben Artefakte gemeinsam nutzen zu können.

    Wenn Sie die AS2- und X12-Vorgänge hinzufügen, müssen Sie möglicherweise eine Verbindung mit dem Integrationskonto erstellen:

    Logik-App-Workflow Verbindung erforderlich?
    Consumption - AS2 (v2) Connector: Keine Verbindung erforderlich

    - X12-Verbinder: Verbindung erforderlich
    Norm - AS2 (v2) Connector: Keine Verbindung erforderlich

    - Integrierter X12-Verbinder: Keine Verbindung erforderlich

Hinzufügen des Anforderungstriggers

Um den Workflow in diesem Beispiel zu starten, fügen Sie den Anforderungstrigger hinzu.

  1. Öffnen Sie Ihre Logik-App-Ressource im Azure-Portal.

  2. Öffnen Sie im Designer Ihren Workflow. Führen Sie die folgenden allgemeinen Schritte aus, um den integrierten Anforderungstrigger namens "Wenn eine HTTP-Anforderung an Ihren Workflow empfangen wird " hinzuzufügen.

    Der Bereich "Triggerinformation" wird geöffnet, wobei die Registerkarte "Parameter " ausgewählt ist.

  3. Lassen Sie den Parameter "Request Body JSON Schema " des Triggers leer, da der Trigger X12-Nachrichten im flachen Dateiformat empfängt.

    Screenshot der Parameter

  4. Speichern Sie den Workflow. Wählen Sie auf der Symbolleiste des Designers Speichern aus.

    Dieser Schritt generiert die HTTP-URL, die Sie später zum Senden einer Anforderung verwenden, die den Workflow auslöst.

    Screenshot: Workflow-Designer, Anforderungstriggerparameter und generierte URL für Anforderungstrigger.

  5. Kopieren Sie die URL, und speichern Sie sie für die spätere Verwendung.

Hinzufügen der Aktion für die AS2-Decodierung

Führen Sie die folgenden Schritte aus, um die AS2(v2) -Decodierungsaktion hinzuzufügen.

  1. Führen Sie unter dem Anforderungstrigger die folgenden allgemeinen Schritte aus, um die folgende AS2 (v2)-Aktion basierend auf Ihrem Workflowtyp hinzuzufügen:

    Arbeitsablauf Aktionsname
    Consumption AS2 Decode
    Norm Decodieren von AS2
  2. Geben Sie im Parameter Nachricht zum Decodieren der Aktion den Nachrichteninhalt an, der decodiert werden soll.

    In diesem Beispiel wird der Body-Inhalt des Trigger-Ausgangs Request angegeben. Sie können diesen Inhalt bereitstellen, indem Sie entweder aus der dynamischen Inhaltsliste auswählen oder einen Ausdruck eingeben:

    • Führen Sie die folgenden Schritte für die dynamische Inhaltsliste aus, um die Ausgabe aus vorherigen Vorgängen auszuwählen:

      1. Wählen Sie im Feld "Nachricht zum Decodieren " aus, und wählen Sie dann das Blitzsymbol aus, um die Liste dynamischer Inhalte zu öffnen.

      2. Wählen Sie unter Wenn eine HTTP-Anfrage eingeht zum Beispiel Body:

        Screenshot: Workflow-Designer, Anforderungstriggerparameter und dynamische Inhaltsliste mit ausgewähltem Body-Parameter.

        Hinweis

        Wenn Body nicht in der Liste der dynamischen Inhalte angezeigt wird, wählen Sie neben dem Abschnitt Wenn eine HTTP-Anforderung empfangen wurde die Option Mehr anzeigen aus.

    • Führen Sie die folgenden Schritte aus, um einen Ausdruck einzugeben, der auf den Inhalt der body-Eigenschaft aus der Request-Trigger-Ausgabe verweist.

      1. Wählen Sie innerhalb des Felds "Nachricht zum Decodieren" und dann das Funktionssymbol aus, um den Ausdrucks-Editor zu öffnen.

      2. Geben Sie im Editorfeld den folgenden Ausdruck ein, und wählen Sie "Hinzufügen" aus:

        triggerOutputs()['body']

  3. Geben Sie im Parameter "Nachrichtenkopfzeilen " der Aktion alle Kopfzeilen ein, die die AS2-Aktion erfordert. Sie finden diese Werte in der Eigenschaft der Request-Trigger-Ausgabe, indem Sie diese Schritte befolgen:

    1. Wählen Sie im Abschnitt "Nachrichtenkopfzeilen " die Option "Nachrichtenkopfzeilen wechseln" in den Textmodus aus:

      Ein Screenshot zeigt die AS2-Dekodierungsaktion mit der Auswahl Nachrichten-Header in Textmodus umwandeln.

    2. Markieren Sie innerhalb des Feldes Nachrichten-Header und wählen Sie dann das Symbol für die Funktion, um den Ausdruck-Editor zu öffnen.

    3. Geben Sie im Editorfeld den folgenden Ausdruck ein, und wählen Sie "Hinzufügen" aus:

      triggerOutputs()['Headers']

      Ein Screenshot zeigt das Feld Nachrichten-Header mit einem Ausdruck, der auf die Header in der Trigger-Ausgabe verweist.

    4. Um den Ausdruck in das Headers Token aufzulösen, wählen Sie auf der Designersymbolleiste die Codeansicht und dann "Designer" aus.

Empfangsbestätigung der Nachricht bestätigen

Um den Erhalt der Nachricht zu bestätigen, senden Sie eine Antwort mit einer AS2 Message Disposition Notification (MDN) an den Absender zurück. Verwenden Sie dazu die Aktionen Condition und Response.

Von Bedeutung

Stellen Sie sicher, dass diese Aktionen sofort der AS2-Aktion folgen, damit der Workflow weiterhin verarbeitet wird, wenn die AS2-Aktion erfolgreich ausgeführt wird. Andernfalls beendet der Workflow die Verarbeitung, wenn die AS2-Aktion fehlschlägt.

Hinzufügen einer Bedingungsaktion zum Auswählen des Aktionspfads

Diese Schritte fügen die Bedingungsaktion hinzu, damit Sie eine oder mehrere Bedingungen angeben können, die ausgewertet werden sollen, und wählen Sie die auszuführenden Aktionen aus, je nachdem, ob die AS2 (v2) -Decodierungsaktion erfolgreich ist.

  1. Führen Sie im Designer unter der AS2(v2) -Decodierungsaktion die folgenden allgemeinen Schritte aus, um die integrierte Bedingungsaktion hinzuzufügen.

    Die Bedingungsaktion wird mit den leeren Pfaden "True " und " False " angezeigt. Sie fügen später die Aktionen hinzu, die in diesen Pfaden ausgeführt werden sollen, basierend darauf, ob die Bedingung als wahr oder falsch ausgewertet wird.

    Ein Screenshot der Bedingungsaktion mit leeren Pfaden.

  2. Wählen Sie die Titelleiste " Bedingung" aus, um die Aktion zu erweitern, damit Sie eine oder mehrere Bedingungen zur Auswertung angeben können.

  3. Geben Sie im linken Feld Choose a value den folgenden Ausdruck ein, basierend auf Ihrem Workflowtyp:

    Verbrauch

    @body('AS2_Decode')?['messageContent']?['isMdnExpected']

    Standard

    @body('Decode_AS2')?['messageContent']?['isMdnExpected']

    Von Bedeutung

    Stellen Sie sicher, dass der AS2-Dekodierungsaktionsname und die Ausgabennamen den Namen Ihrer ausgewählten AS2-Aktion entsprechen.

  4. Wählen Sie in der mittleren Liste das Gleichheitszeichen (=).

  5. Geben Sie im rechten Feld "Wert auswählen " den Wert Expectedein.

    Der Screenshot zeigt die Bedingungsaktion mit der Beispielbedingung zur Bewertung.

  6. Speichern Sie den Workflow.

Einrichten von Aktionspfaden

Diese Schritte geben die auszuführenden Aktionen und die Antworten an, die zurückgegeben werden sollen, basierend darauf, ob die AS2 (v2) -Decodierungsaktion erfolgreich ist.

  1. Wenn die AS2 (v2) -Decodierungsaktion erfolgreich ist, führen Sie die folgenden Schritte aus:

    1. Wählen Sie im Feld "True " das Pluszeichen (+) >"Aktion hinzufügen" aus.

    2. Geben Sie im Suchfeld "Aktion hinzufügen " die Zeichenfolge responseein. Wählen Sie unter "Anforderung" die integrierte Antwortaktion aus.

    3. Um die AS2 MDN in der Ausgabe der AS2 (v2) Decode Action zu referenzieren, geben Sie die folgenden Ausdrücke an:

      • Geben Sie im Headers-Parameter der Aktion für den Schlüsselwert den folgenden Ausdruck ein:

        Verbrauch

        @body('AS2_Decode')?['outgoingMdnContent']?['outgoingMdnHeaders']

        Standard

        @body('Decode_AS2')?['outgoingMdnContent']?['outgoingMdnHeaders']

      • Geben Sie im Parameter "Body " der Aktion den folgenden Ausdruck ein:

        Verbrauch

        @body('AS2_Decode')?['outgoingMdnContent']?['messageContent']

        Standard

        @body('Decode_AS2')?['outgoingMdnContent']?['messageContent']

      Von Bedeutung

      Vergewissern Sie sich, dass der Name der AS2-Decodierungsaktion und die Ausgabennamen mit den Namen der von Ihnen gewählten AS2-Aktion übereinstimmen.

      Das folgende Beispiel zeigt, wie die Antwortaktion aussieht:

      Ein Screenshot zeigt die Antwortaktion und die aufgelösten Ausdrücke, die auf die AS2 MDN zugreifen.

  2. Wenn die AS2(v2) -Decodierungsaktion fehlschlägt, führen Sie die folgenden Schritte aus:

    1. Wählen Sie im Feld "False " das Pluszeichen (+) >"Aktion hinzufügen" aus.

    2. Geben Sie im Suchfeld "Aktion hinzufügen " die Zeichenfolge responseein. Wählen Sie unter "Anforderung" die integrierte Antwortaktion aus.

    3. Richten Sie die Aktion Antwort (Response) ein, um den gewünschten Status und Fehler zurückzugeben.

  3. Speichern Sie den Workflow.

Hinzufügen der Aktion „X12-Nachricht decodieren“

Führen Sie die folgenden Schritte aus, um X12-Nachrichten zu decodieren.

  1. Führen Sie im Designer unter der Antwortaktion die folgenden allgemeinen Schritte aus, um die folgende X12-Decodierungsaktion basierend auf Ihrem Workflowtyp hinzuzufügen:

    Arbeitsablauf Aktionsname
    Consumption X12-Nachricht decodieren
    Norm Decodieren von X12

    Weitere Informationen finden Sie unter Exchange X12-Nachrichten in B2B-Workflows mit Azure Logic Apps.

  2. Wenn Sie von der Aktion aufgefordert werden, eine Verbindung zu erstellen, geben Sie die folgenden Informationen an, und wählen Sie "Neu erstellen" aus.

    • Verbindungsname
    • Integrationskonto-ID
    • SAS-URL des Integrationskontos

    Weitere Informationen finden Sie unter Decodieren von X12-Nachrichten.

  3. Geben Sie im Aktionsinformationsbereich den Inhalt für die zu decodierende Aktion basierend auf Dem Workflowtyp an:

    Arbeitsablauf Aktionsname Parametername
    Consumption X12-Nachricht decodieren Zu decodierende X12-Flatfilenachricht
    Norm Decodieren von X12 Zu decodierende Nachricht

    In diesem Beispiel wird der Nachrichteninhalt aus der Ausgabe der Aktion AS2 (v2) verwendet. Diese Ausgabe verwendet jedoch das JSON-Objektformat und ist base64-codiert. Sie müssen den Inhalt in eine Zeichenfolge konvertieren.

    Um den Inhalt zu konvertieren, geben Sie basierend auf Ihrem Workflowtyp den folgenden Ausdruck in das Feld "Nachricht zu Decodieren" ein:

    Verbrauch

    @base64ToString(body('AS2_Decode')?['messageContent'])

    Standard

    @base64ToString(body('Decode_AS2')?['messageContent'])

    Von Bedeutung

    Vergewissern Sie sich, dass der Name der AS2-Decodierungsaktion und die Ausgabennamen mit den Namen der von Ihnen gewählten AS2-Aktion übereinstimmen.

  4. Speichern Sie den Workflow.

  5. Um den Ausdruck in ein Token aufzulösen, wechseln Sie zwischen der Codeansicht und der Designeransicht. Wählen Sie auf der Designersymbolleiste " Codeansicht" und dann "Designer" aus.

Sie haben nun mit dem Einrichten dieses B2B-Beispielworkflows fertig. In einer realen App werden die decodierten X12-Inhalte in einer branchenspezifischen App oder einem Datenspeicher gespeichert.

Weitere Informationen finden Sie unter:

Um Ihre eigenen LOB-Apps zu verbinden und diese APIs in Ihrem Workflow zu verwenden, fügen Sie weitere Aktionen hinzu, oder schreiben Sie benutzerdefinierte APIs.