Migrieren von BizTalk Server EDI-Lösungen in BizTalk Services: Technische Anleitung

Letzte Aktualisierung: Juli 2015

Autor: Tim Wieman und Nitin Mehrotra

Prüfer: Karthik Bharthy

Geschrieben mit: Microsoft Azure BizTalk Services – Februar 2014-Version.

Elektronischer Datenaustausch (EDI) ist eines häufigsten Mittel, die Unternehmen verwenden, um Daten elektronisch auszutauschen. Dieser Vorgang wird auch als Business-to-Business- oder B2B-Transaktionen bezeichnet. BizTalk Server verfügt seit über einem Jahrzehnt über EDI-Unterstützung, und zwar seit der ersten BizTalk Sever-Version. Mit BizTalk Services wird die Unterstützung für Microsoft EDI-Lösungen auf der Microsoft Azure-Plattform fortgesetzt. B2B-Transaktionen sind für eine Organisation zumeist extern. Daher ist die Implementierung auf einer Cloud-Plattform einfacher. Microsoft Azure stellt diese Funktion über BizTalk Services zur Verfügung.

Obwohl einige Kunden BizTalk Services als Plattform ohne vorhandene Infrastruktur für neue EDI-Lösungen betrachten, verfügen zahlreiche Kunden über aktuelle BizTalk Server EDI-Lösungen, die in Azure migriert werden sollen. Da BizTalk Services EDI auf den gleichen Konzepten wie die BizTalk Server EDI-Architektur entworfen (Handelspartner, Entitäten, Verträge) wurde, ist es möglich, BizTalk Server EDI-Artefakte in BizTalk Services zu migrieren.

In diesem Dokument werden einige der Unterschiede diskutiert, die bei der Migration von BizTalk Server EDI-Artefakten in BizTalk Services auftreten. In diesem Dokument werden ausreichende Kenntnisse der BizTalk Server EDI-Verarbeitung und -Handelspartnerverträge vorausgesetzt. Weitere Informationen zu BizTalk Server EDI finden Sie unter Handelspartnerverwaltung mithilfe von BizTalk Server.

Das EDI-Modul von BizTalk Server wurde für BizTalk Server 2010 erheblich verbessert, indem es für die Integration von Partnern, Profilen und Vereinbarungen neu modelliert wurde. BizTalk Services verwendet das gleiche Modell, um die Handelspartner und die Geschäftsbereiche innerhalb dieser Handelspartner zu organisieren. Daher ist die Migration von EDI-Artefakten aus BizTalk Server 2010 oder höher in BizTalk Services ein sehr geradliniger Vorgang. Wenn Sie EDI-Artefakte migrieren möchten, die Versionen vor BizTalk Server 2010 zugeordnet sind, müssen Sie zuerst ein Upgrade auf BizTalk Server 2010 ausführen und dann Ihre EDI-Artefakte in BizTalk Services migrieren.

Wie bei BizTalk Server wird die EDI-Verarbeitung in BizTalk Services um eine Handelspartnerverwaltungs-Lösung (Trading Partner Management, TPM) erstellt. Die TPM-Lösung weist die folgenden Schlüsselkomponenten auf:

  • Handelspartner, die die Organisation in einer B2B-Transaktion darstellen.

  • Profile, die die Geschäftsbereiche eines Handelspartners darstellen.

  • Handelspartnerverträge (oder Verträge), die den Geschäftsvertrag zwischen zwei Partnern/Profilen darstellen.

Die folgende Abbildung zeigt die Ähnlichkeiten sowie die Unterschiede zwischen einer BizTalk Server EDI-Lösung und einer BizTalk Services EDI-Lösung:

Die folgenden Hauptunterschiede (und Ähnlichkeiten) zwischen einem EDI-Lösungsfluss in BizTalk Server und BizTalk Services treffen zu:

  • Ebenso wie BizTalk Server eine EDIReceive-Pipeline zum Empfangen einer EDI-Nachricht und eine EDISend-Pipeline zum Senden einer EDI-Nachricht verwendet, verwendet BizTalk Services eine EDI-Empfangsbrücke zum Empfangen und eine EDI-Sendebrücke zum Senden von EDI-Nachrichten. In BizTalk Server werden Pipelines mithilfe von Sende- oder Empfangsports einem Vertrag zugeordnet. In BizTalk Services bezeichnet der Vertrag selbst die Sende- oder Empfangsbrücke.

  • In BizTalk Server wird die Nachricht in einer SQL Server-Datenbank gespeichert, nachdem die EDIReceive-Pipeline die EDI-Nachricht verarbeitet hat. Die EdiSend-Pipeline entnimmt die Nachricht dann aus der SQL Server-Datenbank, verarbeitet sie und sendet sie dann an den Handelspartner.

    In BizTalk Services wird die Nachricht an einen externen Prozess weitergeleitet, nachdem die EDI-Empfangsbrücke die EDI-Nachricht verarbeitet hat. Der externe Prozess kann unter Microsoft Azure oder lokal ausgeführt werden. Der externe Prozess sollte die Nachricht an die EDI-Sendebrücke weiterleiten. Die Sendebrücke ruft die Nachricht nicht von sich aus ab. Nachdem die Nachricht verarbeitet wurde, leitet die EDI-Sendebrücke die Nachricht an den Handelspartner weiter.

BizTalk Services stellt eine einfach zu verwendende Benutzeroberfläche für die Konfiguration zur Verfügung, damit ein B2B-Vertrag zwischen Handelspartnern schnell erstellt und bereitgestellt werden kann, ohne dass Microsoft Azure-Serverinstanzen (Web- oder Workerrollen), Microsoft Azure SQL-Datenbanks oder Microsoft Azure-Speicherkonten konfiguriert werden müssen. Komplexere Szenarien erfordern die Einbindung in den Workflow oder in einen anderen verarbeitenden Dienst um einen Handelspartnervertrag herum, also vor oder nach der EDI-Brückenverarbeitung des Handelspartnervertrags. Die folgenden Ereignisfolgen treten während der EDI-Nachrichtenverarbeitung in BizTalk Services auf.

  1. Eine EDI-Meldung wird vom Handelspartner Fabrikam empfangen. Für den Empfang von EDI-Nachrichten von den Handelspartnern unterstützt BizTalk Services Transportprotokolle wie FTP, SFTP, AS2 und HTTP/S.

  2. Die empfängerseitige Verarbeitung des Handelspartnervertrags verwandelt die EDI-Meldung in das XML-Format zurück. Sie können die disassemblierte EDI-Nachricht (im XML-Format) an Servicebus-Endpunkte wie etwa einen Servicebus-Relayendpunkt, ein Servicebus-Thema, eine Servicebus-Warteschlange oder eine BizTalk Services-Brücke weiterleiten.

  3. Die zurückverwandelten XML-Meldungen können für die weitere benutzerdefinierte Verarbeitung vom Endpunkt erhalten werden. Diese Endpunkte können von einer lokalen Komponente oder einer Microsoft Azure-Serverinstanz verarbeitet werden, um die Nachricht in einem Windows Workflows (WF) oder einem WCF-Dienst (Windows Communication Foundation) weiterzuverarbeiten.

  4. Die Sendeseiten-Verarbeitung des Handelspartnervertrag integriert dann die XML-Nachricht in EDI-Format und sendet sie an den Handelspartner Contoso. Für das Senden von EDI-Meldungen zu den Handelspartnern unterstützt BizTalk Services die gleichen Protokolle, die zum Empfangen von EDI-Meldungen verwendet werden.

Dieses Dokument stellt außerdem Konzeptrichtlinien für die Migration von einigen der anderen BizTalk Server EDI-Artefakte in BizTalk Services zur Verfügung.

In BizTalk Server richten Sie Empfangsspeicherorte und Empfangsports ein, um EDI-/XML-Nachrichten von den Handelspartnern zu empfangen, und Sie richten Sendeports ein, um EDI-/XML-Nachrichten an die Handelspartner zu senden. Anschließend binden Sie diese Ports mithilfe der BizTalk Server-Verwaltungskonsole an einen Handelspartnervertrag. In BizTalk Services sind die Speicherorte, an denen Sie Nachrichten von den Handelspartnern empfangen und Nachrichten an Handelspartner senden, als Teil des Handelspartnervertrags selbst (als Bestandteil der Transporteinstellungen) im BizTalk Services-Portal konfiguriert. Somit ist das Konzept „Sendeports“ und „Empfangsspeicherorte“ in BizTalk Services nicht wirklich vorhanden. Weitere Informationen finden Sie unter Erstellen von Verträgen.

In BizTalk Server EDI sind Pipelines nachrichtenverarbeitende Entitäten, die auch benutzerdefinierte Logik für bestimmte Verarbeitungsfunktionen enthalten können, die für die Anwendung erforderlich sind. Für BizTalk Services wird entsprechend eine EDI-Brücke verwendet. In BizTalk Services sind die EDI-Brücken zurzeit jedoch "geschlossen". Dies bedeutet, dass Sie einer Brücke keine eigenen benutzerdefinierten Aktivitäten hinzufügen können. Jede benutzerdefinierte Verarbeitung muss außerhalb der EDI-Bridge in Ihrer Anwendung erfolgen – bevor oder nachdem die Nachricht die Brücke durchläuft, die als Teil des Handelspartnervertrags konfiguriert ist. Für EAI-Brücken besteht die Option, benutzerdefinierte Verarbeitung auszuführen. Wenn Sie benutzerdefinierte Verarbeitung wünschen, können Sie EAI-Brücken verwenden, bevor oder nachdem die Nachricht von der EDI-Brücke verarbeitet wird. Weitere Informationen finden Sie unter Einschließen von benutzerdefiniertem Code in Bridges.

Sie können einen Nachrichtenfluss zum Veröffentlichen/Abonnieren mit benutzerdefiniertem Code einfügen, und/oder Warteschlangen und Themen von Servicebus-Messaging verwenden, bevor der Handelspartnervertrag die Nachricht empfängt oder nachdem der Vertrag die Nachricht verarbeitet und an einen Servicebus-Endpunkt weiterleitet.

Weitere Informationen zum Nachrichtenflussmuster finden Sie unter Szenarien/Meldungsfluss.

Wenn Sie mit den BizTalk Server 2010-Handelspartnerverträgen vertraut sind, die für die EDI-Verarbeitung verwendet werden, werden Ihnen BizTalk Services-Handelspartnerverträge ebenfalls sehr vertraut vorkommen. Die meisten Vertragseinstellungen sind gleich und verwenden dieselbe Terminologie. In einigen Fällen sind die Vertragseinstellungen im Vergleich zu den gleichen Einstellungen in BizTalk Server erheblich einfacher. Microsoft Azure BizTalk Services unterstützt X12-, EDIFACT- und AS2-Transport.

Microsoft Azure BizTalk Services stellt auch ein Tool für die TPM-Datenmigration zum Migrieren von Handelspartnern und Verträgen aus dem BizTalk Server-Handelspartnermodul in das BizTalk Services-Portal zur Verfügung. Das TPM-Datenmigrationstool ist als Bestandteil des Pakets Tools verfügbar, das unter http://go.microsoft.com/fwlink/?LinkId=235057 heruntergeladen werden kann. Das Paket enthält auch eine Infodatei, die Anweisungen zur Verwendung des Tools sowie grundlegende Problembehandlungsinformationen für das Tool bereitstellt.

BizTalk Services stellt EDI-Schemas zur Verfügung, die in BizTalk Services-Lösungen verwendet werden können. Außerdem können BizTalk Server EDI-Schemas auch mit BizTalk Services verwendet werden, weil der Stammknoten des EDI-Schemas für BizTalk Server und BizTalk Services identisch ist. Auf diese Weise sind Sie in der Lage, die BizTalk Server EDI-Schemas direkt zu verwenden in den EDI-Lösungen zu nutzen, die Sie mithilfe von BizTalk Services entwickeln. Sie können die Schemas unter http://go.microsoft.com/fwlink/?LinkId=235057 herunterladen.

Zuordnungen in BizTalk Server werden in BizTalk Services als Transformationen bezeichnet. Das Migrieren von Zuordnungen aus BizTalk Server in BizTalk Services kann (je nach Zuordnungskomplexität) etwas komplizierter sein. Das Zuordnungstool, das für BizTalk Services verwendet wird, unterscheidet sich von BizTalk-Mapper. Obwohl die Zuordnung zumeist genauso aussieht, ist das zugrunde liegende Zuordnungsformat unterschiedlich. Die Funktoide (als Zuordnungsvorgangs in BizTalk Services bezeichnet), die für Benutzer verfügbar sind, sind ebenfalls unterschiedlich. Tatsächlich kann eine BizTalk-Zuordnung in BizTalk Services nicht direkt verwendet werden. Außerdem sind nicht alle Funktoide, die in BizTalk Server verfügbar sind, als Zuordnungsvorgänge in BizTalk Services verfügbar.

Die Liste der verfügbaren Transformationszuordnungsvorgänge scheint sich stark von BizTalk Server-Mapper zu unterscheiden, BizTalk Services-Transformationen verfügen jedoch über neue Methoden zum Erfüllen der gleichen Aufgaben. Beispielsweise weisen BizTalk Services-Transformationen Listenvorgänge auf. Dies war nicht in BizTalk-Mapper verfügbar. Listenvorgänge ermöglichen es Ihnen, eine „Liste“ zu erstellen und auszuführen, wobei eine Liste eine Gruppe von Elementen ist (auch bekannt als „Zeilen“) und jedes Element mehrere Mitglieder (auch bekannt als „Spalten“) enthalten kann. Sie können die Liste sortieren, Elemente auf Grundlage einer Bedingung auswählen, und vieles mehr.

Ein anderes Beispiel für die neuen Funktionen von BizTalk Services-Transformationen sind Schleifen-Vorgänge. Es ist schwierig, geschachtelte Schleifen in BizTalk Server-Mapper zu erstellen. Daher wurden Schleifenzuordnungsvorgänge zu BizTalk Services-Transformationen hinzugefügt.

Ein weiteres Beispiel ist der If-Then-Else-Ausdruckszuordnungsvorgang. Einen If-Then-Else-Vorgang auszuführen, war in der BizTalk-Mapper möglich, aber es waren mehrere Funktoide notwendig, um eine scheinbar einfache Aufgabe auszuführen.

Microsoft Azure BizTalk Services stellt ein Tool zum Migrieren von BizTalk Server-Zuordnungen in BizTalk Services-Transformationen bereit. BTMMigrationTool ist als Bestandteil des Pakets Tools verfügbar, das mit dem BizTalk Services SDK bereitgestellt wird. Es kann unter http://go.microsoft.com/fwlink/?LinkId=235057 heruntergeladen werden. Weitere Informationen zu diesem Tool finden Sie unter Konvertieren einer BizTalk-Zuordnung in eine BizTalk Services-Transformation.

Sie können sich auch das Beispiel von Sandro Pereira (BizTalk MVP) ansehen, das zeigt, wie BizTalk Server-Zuordnungen in BizTalk Services-Transformationen migriert werden. Das Beispiel ist hier verfügbar. Ein auf diesem Beispiel basierender Artikel ist hier verfügbar.

Wenn Sie BizTalk Server-Orchestrierungen in Microsoft Azure migrieren müssen, müssen die Orchestrierungen neu geschrieben werden, da Microsoft Azure die Ausführung von BizTalk Server-Orchestrierungen nicht unterstützt. Sie können die Orchestrierungsfunktionalität in einem Windows Workflow Foundation (WF4) 4.0s-Dienst neu schreiben. Auf diese Weise würde eine vollständige Neufassung entstehen, da zurzeit keine Migration von BizTalk Server-Orchestrierungen in WF4 möglich ist. Es folgen einige Ressourcen für Windows Workflow:

  • So integrieren Sie einen WCF-Workflow Service mit Service Bus Queues and Topics von Paolo Salvatori. Weitere Informationen erhalten Sie hier (http://go.microsoft.com/fwlink/?LinkId=237313).

  • Erstellen von Apps mit Windows Workflow Foundation und Azure Sitzung aus der Konferenz Build 2011. Weitere Informationen erhalten Sie hier (http://go.microsoft.com/fwlink/?LinkId=237314).

  • Windows Workflow Foundation Developer Center zu MSDN. Weitere Informationen erhalten Sie hier (http://go.microsoft.com/fwlink/?LinkId=237315).

  • Windows Workflow Foundation 4 (WF4)-Dokumentation zu MSDN. Weitere Informationen erhalten Sie hier (http://go.microsoft.com/fwlink/?LinkId=237316).

Im Folgenden finden Sie einige Überlegungen, die bei der Verwendung von BizTalk Services erforderlich sind.

Die EDI-Verarbeitung von BizTalk Server verwendet das Konzept der "Ausweichvereinbarungen". BizTalk Services weist bisher kein Konzept der Ausweichvereinbarung auf. Weitere Informationen zur Verwendung der Ausweichvereinbarungen in BizTalk Server finden Sie in den BizTalk-Dokumentationsthemen Die Rolle der Verträge bei EDI-Verarbeitungen sowie Konfigurieren der Eigenschaften von globalen Verträgen oder Ausweichvereinbarungen.

BizTalk Services-Brücken und der derzeitige Zustand unterstützen das Routing von Nachrichten an mehrere Ziele mithilfe eines Modells für Veröffentlichen und Abonnieren nicht. Stattdessen können Sie Nachrichten von einer BizTalk Services-Brücke an ein Servicebus-Thema weiterleiten. Dieses kann dann über mehrere Abonnements zum Empfangen der Nachricht an mehreren Endpunkten verfügen.

Microsoft Azure BizTalk Services wird an regelmäßigen Meilensteinen aktualisiert, um weitere Features und Funktionen hinzuzufügen. Mit jedem Update werden umfangreichere Funktionen unterstützt, um das Erstellen von End-to-End-Lösungen mithilfe von BizTalk Services und anderen Azure--Technologien zu ermöglichen.

Siehe auch

Anzeigen: