AS2-Integration mit MapForce und MapForce Server
Die FlowForce Server Advanced Edition bietet eine Funktionalität zum Senden von AS2-Nachrichten an Handelspartner bzw. zum Empfangen von AS2-Nachrichten von Handelspartnern. Zusätzlich dazu ist FlowForce Server in der Lage, AS2-Daten mit Hilfe vordefinierter, integrierter Funktionalitäten zu verarbeiten und lokal zu speichern. Für komplexere Aufgaben, wenn Sie AS2-Daten aus einer vorhandenen Datenquelle (z.B. einer Datenbank) aufbereiten oder in andere Formate konvertieren oder an einen Webservice senden müssen, können Sie auch MapForce und MapForce Server in den AS2-Prozess integrieren.
In zwei Szenarien sind MapForce und MapForce Server erforderlich:
1.Um Daten in einem beliebigen von MapForce unterstützten Format zu mappen oder zu generieren (z.B. XML, XBRL, Excel, Datenbanken, Webservices), bevor Sie diese an AS2-Partner senden.
2.Um von AS2-Partnern erhaltene Daten auf verschiedenste Weise zu transformieren (z.B. Konvertierung in Excel, Konvertierung in ein anderes XML-Schema, Speichern in einer Datenbank, Senden an einen Webservice, usw.).
Generieren und Senden von AS2-Daten
In einem Szenario, in dem Sie AS2-Daten mit MapForce vorbereiten oder generieren müssen, bevor Sie diese an Ihre Partner senden, sieht der grundlegende Ablauf folgendermaßen aus:
Generieren und Senden von AS2-Daten
Im obigen Diagramm müssen sowohl MapForce Server als auch FlowForce Server auf demselben Rechner (bei dem es sich um ein Windows-, Linux- oder macOS-Betriebssystem handeln kann) installiert sein, siehe Systemanforderungen). MapForce kann auf demselben Rechner wie MapForce Server und FlowForce Server (vorausgesetzt es handelt sich um einen Windows-Rechner) oder auf einem anderen Rechner, der sich über HTTP oder HTTPS mit FlowForce Server verbinden kann, ausgeführt werden. Der AS2-Partner ist ein Remote Server, mit dem FlowForce Server über HTTP(S) kommuniziert.
Der oben dargestellte AS2-Prozess besteht aus den folgenden Schritten:
Schritt # | Beschreibung |
---|---|
1.Erstellen und Testen des EDI/XML-Datenmappings | Sie können mit MapForce eine Datenmapping-Transformation erstellen, die Input-Daten in verschiedenen Formaten (darunter reiner Text, CSV, JSON, XML, verschiedene EDI-Varianten, Datenbanken, Webservices) erhält und eine oder mehrere Dateien in einen Zielformat (z.B. UN/EDIFACT) erzeugt. Die Erstellung eines Mappings für EDI-Zwecke unterscheidet sich nicht von anderen Mappings. Die MapForce-Dokumentation enthält verschiedene Beispiele dazu, siehe Kapitel EDI. Während Sie das Mapping erstellen, können Sie die Mapping-Ausgabe direkt in MapForce validieren und durch Klicken auf das Register "Ausgabe" eine Vorschau darauf anzeigen. Um sicherzustellen, dass das Mapping in einer Serverumgebung ausgeführt werden kann, müssen Sie es für die Transformationssprache BUILT-IN erstellen und testen. |
2. Bereitstellen des Mappings auf FlowForce Server | FlowForce Server automatisiert verschiedene Aufgaben mit Hilfe von Aufträgen, die bei Bedarf oder nach einem bestimmten Zeitplan ausgeführt werden können. Diese Aufträge werden über eine Web-Oberfläche definiert werden. FlowForce Server kann auch die Ausführung eines mit MapForce erstellten Mappings automatisieren, vorausgesetzt MapForce Server wird unter FlowForce Server-Verwaltung ausgeführt. Sobald das gewünschte Resultat mit dem MapForce Mapping erzeugt wird, können Sie die Ausführung automatisieren, indem Sie das Mapping auf FlowForce Server bereitstellen. |
3. Konfigurieren von AS2-Partnern und Zertifikaten | Um die Kommunikation mit AS2-Partnern einzurichten, benötigen Sie deren AS2-Verbindungsinformationen (wie URI und AS2-Namen) und Exchange-Zertifikate. Die Zertifikate müssen importiert werden und die Partnerdaten müssen in FlowForce Server eingegeben werden, siehe Konfigurieren von AS2-Zertifikaten und Konfigurieren von AS2 Partnern. |
4. Erstellung eines Auftrags | (a) Um das Mapping auszuführen und die gewünschte Ausgabe zu erzeugen und (b) die AS2-Nachricht zu senden (siehe auch Schritt 7), muss ein FlowForce Auftrag erstellt werden. Diese beiden Aktionen können entweder in Ausführungsschritten desselben Auftrags oder in zwei separaten Aufträgen ausgeführt werden. Ein Beispiel für einen FlowForce Server-Auftrag, in dem ein MapForce Mapping ausgeführt wird, finden Sie unter Erstellen eines Auftrags anhand eines MapForce Mappings. |
5. Ausführen des Auftrags | Der im vorigen Schritt erstellte FlowForce Server-Auftrag kann je nach Geschäftsanforderung auf verschiedene Arten ausgeführt werden. So kann er z.B. als Webservice-Aufruf oder bei Änderung von Dateien im Dateisystem oder nach einem bestimmten Zeitplan (Uhrzeit und Datum) ausgeführt werden, siehe auch Verwalten von Triggern. Dieser Schritt ist vollständig automatisiert. |
6. Ausführen des Datenmappings | Dieser Schritt wird ebenfalls automatisch ausgeführt und zwar von MapForce Server. Wenn in einem Auftrag die Ausführung eines Datenmappings (nach einem Zeitplan oder auf Anfrage) konfiguriert ist, wird intern MapForce Server aufgerufen. MapForce Server führt daraufhin das Mapping aus und gibt die Ausgabe an FlowForce Server zurück. |
7. Auswählen der Ausgabe und senden der AS2-Nachricht | Um die AS2-Nachricht zu senden, muss die vordefinierte FlowForce Server-Funktion /system/as2/send. in Ihrem Auftrag (oder Auftragsschritt in einem Auftrag) aufgerufen werden. Für diese Funktion wird eine Reihe von Parametern zum Senden der AS2-Nachricht benötigt, darunter das in Schritt 3 konfigurierte Partnerobjekt, die URI des Partners und der gewünschte Inhalt der AS2-Nachricht. Außerdem müssen in Ihrem Auftrag eventuell verschiedene FlowForce Server AS2-Ausdrucksfunktionen aufgerufen werden, um die Mapping-Ausgabe in die gewünschte Form zu konvertieren (z.B. von einer Datei in einen Stream). |
8. Partner antwortet mit synchroner MDN | Wenn Sie das AS2-Partnerobjekt in Schritt 3 erstellen, können Sie optional auch verlangen, dass in Antwort auf die von FlowForce Server gesendete AS2-Nachricht eine Message Disposition Notification (MDN) vom Partner gesendet wird, siehe auch AS2-Begriffe. Der Partner muss die MDN in derselben Sitzung senden, in der auch der ausgehende HTTP-Call von FlowForce Server gesendet wird (d.h. sie muss als "synchron" konfiguriert werden). |
Empfangen und Verarbeiten von AS2-Daten
Wenn Ihr Unternehmen AS2-Daten von Handelspartnern erhält, können Sie zusätzlich dazu einen Workflow für den Empfang von Daten konfigurieren. In diesem Szenario kann Ihr Unternehmen AS2-Daten nicht nur empfangen und speichern, sondern auch in andere Formate transformieren, in einer Datenbank speichern oder an einen anderen Webservice senden. So könnten Sie z.B. Dateien im EDI- oder XML-Format von AS2-Handelspartnern empfangen und diese anschließend als Input für ein Mapping bereitstellen, das als wiederholter FlowForce Server-Auftrag ausgeführt wird. Ein Beispiel für einen solchen AS2-Ablauf würde folgendermaßen aussehen:
Empfangen und Verarbeiten von AS2-Daten
Der oben dargestellte AS2-Prozess besteht aus den folgenden Schritten:
Schritt # | Beschreibung |
---|---|
1, 2, 3 | Dies sind dieselben Schritte wie in der vorhergehenden Tabelle mit dem einzigen Unterschied, dass das Mapping diesmal eine Datei als Input erhält, die Ihr Unternehmen von einem AS2-Handelspartner erhält (z.B. eine EDI- oder XML-Datei). |
4. Erstellen eines Auftrags (AS2-Dienst) | Dieser Schritt wird nur einmal durchgeführt. In diesem Schritt erstellen Sie einen FlowForce Server-Auftrag, in dem ein AS2-Dienst bereitgestellt wird. Der AS2-Dienst ist an einer vorkonfigurierten HTTP(S)-Adresse und einem vorkonfigurierten Port empfangsbereit für Requests von Ihrem AS2-Partner. |
5. Senden der AS2-Daten | In diesem Schritt sendet ein Handelspartner AS2-Nachrichten an den AS2-Dienst. Damit die Kommunikation erfolgreich ist, müssen der AS2-Name des Partners und die Zertifikate bereits in FlowForce Server definiert worden sein. |
6. Antwort mit synchroner MDN | FlowForce Server antwortet dem AS2-Partner mit einer synchronen MDN, die Auskunft über den Ausgang der Operation gibt (Erfolg oder Fehler). |
7. Verarbeiten und Speichern der Daten | Sobald eine Nachricht eingegangen ist, konvertiert ein FlowForce Server-Auftrag die empfangenen Daten in einen String oder eine Datei und speichert diese anschließend in einem Verzeichnis oder übergibt sie als Argument an einen weiteren Auftrag. Die genaue Verarbeitungslogik kann mit Hilfe der vordefinierten FlowForce Server-Funktionen und mittels Ausdrucksfunktionen konfiguriert werden. |
8. Ausführen des Datenmappings | Der FlowForce Server-Auftrag, der AS2-Daten empfängt, kann optional den im ersten Schritt erstellten Datenmappingauftrag aufrufen. Der Mapping-Auftrag erhält als Input die vom Partner erhaltenen AS2-Daten und verarbeitet diese auf eine der von MapForce unterstützten Arten: transformiert diese z.B. in ein anderes Format, speichert sie in einer Datenbank, sendet sie an einen anderen Webdienst, usw. |