Table of Contents

Hintergrundinformationen

Die Universal Data Connection überwacht abonnierte Tabellen und speichert zu jeder Datenänderung einen Datensatz im "Puffer". Dies passiert während einer Transaktion, die durch einen Benutzer oder Dienst ausgelöst wurden.

Periodisch verschiebt ein Dienst alle jüngst erzeugten Datensätze in eine weitere Zwischentabelle, die "Interne Warteschlange". Von dort aus stellt derselbe Dienst anschließend diese Datensätze mit Änderungshinweisen den jeweiligen Abonnenten bereit, indem er sie in die "Ausgehende Warteschlange für Änderungsverfolgung" bzw. "Ausgehende Warteschlange für Stammdatensynchronisation" verschiebt und hierbei für jeden relevanten Partner eine eigene Kopie erzeugt. Das Verschieben der Informationen über drei Ebenen dient einerseits der Transaktionssicherheit, andererseits reduziert es das Risiko von Tabellensperren.

Die "Ausgehende Warteschlange für Änderungsverfolgung" wird den Partnersystemen mittels REST-API zugänglich gemacht. Der API-Endpunkt filtert automatisch auf die für den jeweils anfragenden Partner relevanten Einträge, vorausgesetzt der anfragende Benutzer ist diesem eingerichteten Partner zugeordnet. Für Partner der Stammdatensynchronisation gibt es die separate "Ausgehende Warteschlange für Stammdatensynchronisation". Sie wird durch einen weiteren Dienst abgearbeitet, der zu jedem Eintrag den darin genannten Datensatz an den darin genannten Partner überträgt.

Transaktionssicherheit | Entkoppeltes Tagesgeschäft | Skalierbarkeit

Wesentliches Ziel ist es, den Anwendern über Systemgrenzen hinweg hochaktuelle und valide Daten zur Verfügung stellen zu können. Die Universal Data Connection ist dabei auf hohe Lasten ausgelegt. Die Konsistenz der Daten wird bei sich überschneidenden Datenzugriffen beim Erzeugen und Konsumieren sichergestellt. Das Risiko ungewollter Wechselwirkungen zwischen internen und externen Lastspitzen, z. B. in Form von hinderlichen Tabellensperrungen, wird architektonisch minimiert.

Versions- und technologieübergreifend

Die Konzentration auf gängige Verfahren und eine klare Trennung von Zuständigkeiten erleichtert Ihnen in vielen Fällen zeitlich entkoppelte Upgrades oder gar den gezielten Austausch einzelner Partnersysteme. So kann bspw. ein Webshop erneuert werden, ohne dass Microsoft Dynamics 365 Business Central dafür angepasst werden müsste. Ebenso erleichtert die Extension den Übergang zwischen Microsoft Dynamics NAV und Microsoft Dynamics 365 Business Central, falls Partnersysteme bereits auf diese Weise angebunden wurden. Ähnlich kann es sich überkommende Generationen von Business Central hinweg verhalten. Zudem stellt die Universal Data Connection die Informationen wahlweise für verschiedene Zugriffsprotokolle bereit. Partnersysteme können selbst entscheiden, welches der durch Dynamics 365 Business Central unterstützten Protokolle verwendet werden soll. Später können Partnersysteme das Protokoll wechseln, ohne das grundsätzliche Zugriffsverfahren ändern zu müssen.

Hinweis

Die meisten Microsoft Dynamics NAV-Installationen werden derzeit noch durch Partnersysteme über das Protokoll SOAP angesprochen, weil SOAP in der Produktgeneration die benötigten Objekttypen vollständig abgedeckt hat und über alle relevanten Microsoft Dynamics NAV-Versionen durchgängig verfügbar war. Auch für Microsoft Dynamics Business Central unterstützt die Universal Data Connection derzeit noch SOAP-Endpunkte. Parallel zu SOAP hat Microsoft allerdings das REST-Protokoll OData immer weiterentwickelt und sowohl in Microsoft Dynamics NAV als auch in Microsoft Dynamics Business Central integriert. Mittlerweile unterstützt Microsoft Dynamics Business Central auch ein hochentwickeltes API-Konzept, das ausschließlich auf dem REST-Protokoll OData in der Version 4 basiert. Die Universal Data Connection unterstützt derzeit noch die separat einrichtbaren Webdienste, wie sie bereits in Microsoft Dynamics NAV vorhanden waren, aber auch schon die neue API-Technologie, die in Microsoft Dynamics Business Central vorangetrieben wird. Da Microsoft die Unterstützung des Protokolls SOAP abgekündigt hat, empfehlen wir im Fall einer Migration den Einsatz der modernen API-Technologie. Dies gilt auch für die Anbindung neuer Partnersysteme.

API-Technologie

Die in Microsoft Dynamics Business Central bereitgestellte API-Technologie beinhaltet u. a. zwei bisher nicht vorhandene Konzepte:

  • Webhooks
  • System-IDs

Webhooks ermöglichen es Ihnen, sich aktiv über Datenänderungen in bestimmten Tabellen informieren zu lassen. System-IDs ermöglichen es Ihnen, Datensätze anhand einer eindeutigen GUID zu identifizieren. Die Universal Data Connection bindet diese und weitere Neuerungen der API-Technologie ein und ergänzt sie um hilfreiche Verfahren. Konkret bedeutet das, dass Sie die Änderungsnachrichten mittels Webhook abonnieren können und für jeden geänderten Datensatz die interne System ID genannt bekommen, sodass Sie den Datensatz gezielt über einen API-Endpunkt abrufen können. In einem solchen API-Szenario unterstützt Sie die Universal Data Connection in der tabellenübergreifenden Bündelung und chronologischen Wiedergabe aller Änderungen. Außerdem bleibt das Protokoll so lange lesbar, bis das Partnersystem verarbeitete Einträge aktiv löscht. Dies verbessert die Robustheit und Wartbarkeit gegenüber einer Architektur, die allein auf API-Webhooks zu einzelnen Tabellen basiert.

Stammdatensynchronisation

Die Stammdatensynchronisation ist eine spezielle Form des Datenaustausches. Sie setzt voraus, dass das Partnersystem ebenfalls ein Microsoft Dynamics 365 Business Central-Mandant ist und dass die synchronisierten Tabellenfelder gleiche oder kompatible Datentypen besitzen. So ist die Stammdatensynchronisation in der Lage, geänderte Datensätze aus abonnierten Tabellen aktiv in die jeweils konfigurierten Zieldatenbanken zu schreiben und den Erfolg zu kontrollieren. Dabei genügt eine Webdienst-Verbindung zu den einzelnen Mandanten – diese müssen sich nicht in einer gemeinsamen Datenbank befinden.

Kontrolle und Einrichtung

Die Extension gibt der technischen Kommunikation mit Partnersystemen eine Benutzeroberfläche, über die Verbindungen eingerichtet und kontrolliert werden können. Sobald die für den technischen Datenaustausch benötigten Seiten erstellt und als Webdienst oder Teil einer API veröffentlicht sind, können sie in der Oberfläche den Partnersystemen zugeordnet und in den inkrementellen, also änderungsbezogenen Datenaustausch eingebunden werden. Dabei nutzt die Extension ausschließlich cloud-fähige und offiziell dokumentierte Verfahren, sodass sie in jeder Umgebung auf gleiche Weise eingesetzt werden kann.