Table of Contents

Funktionsweise der Universal Data Connection aus Sicht des Partnersystems

Änderungsverfolgung

Sie als Partner prüfen periodisch den Endpunkt für Änderungsnachrichten auf Inhalt:

[GET] https://api.company.com:7048/BC/api/gob/unitopUdc/v2.0/udcChanges?tenant=default

Als Header geben Sie dabei zusätzlich Informationen zu Company und Accept-Language an. Die Authentifizierung erfolgt je nach Installation mittels Basic Authentication oder OAuth2. Sie erhalten dann sämtliche aktuell vorhandenen Nachrichten zurück. Falls Sie das Ergebnis bereits in der Anfrage eingrenzen möchten, können Sie dies mit Parametern wie $top, $skip, $orderby, $filter oder $select tun.

In der Antwort sind im JSON-Format je Änderungsnachricht Informationen zur betroffenen Tabelle, der Datenbankaktion (Einfügen, Ändern, Löschen, Umbenennen) sowie dem betroffenen Datensatz enthalten. Zusätzlich kann - je nach Einrichtung innerhalb von Business Central - ein Link zum unmittelbaren Lesen des betroffenen Datensatzes enthalten sein. Sollte dies im konkreten Fall nicht vorgesehen sein, dann können Sie den Link aus den anderen Informationen aus der Änderungsnachricht selbst konstruieren. Über diesen Link lesen Sie dann den betroffenen Datensatz in seiner aktuell vorhandenen Version und übernehmen den Inhalt in Ihren eigenen Datenbestand.

Bei Nachrichten, die die Datenbankaktion "Löschen" enthalten, entfällt das Lesen des (nicht mehr vorhandenen) Datensatzes. Stattdessen ermitteln Sie den Datensatz in Ihrem eigenen Datenbestand und löschen ihn dort. Als gemeinsamer Schlüssel für alle Datensätze bietet sich die in Business Central verwaltete SystemId an. Diese ist je Tabelle eindeutig.

Alternativ können die mehrteiligen sprechenden Primärschlüssel verwendet werden, die allerdings häufig aufwendiger im Partnersystem abzubilden sind.

Zu einem geeigneten Zeitpunkt löschen Sie dann selbständig die Änderungsnachricht in Business Central:

[DELETE] https://api.company.com:7048/BC/api/gob/unitopUdc/v2.0/udcChanges(4d0f42a8-e692-ec11-93b4-0022488bb07d)?tenant=default

Das hier beschriebene Verfahren zielt auf die weitgehende Entkopplung beider Systeme ab. Sie gestalten den Verarbeitungsprozess zeitlich und inhaltlich unabhängig von Business Central. Durch das Löschen der Nachrichten quittieren Sie implizit auch die Verarbeitung, die aber durch Business Central nicht weiter kontrolliert wird. Bitte sorgen Sie dennoch bei der Implementation für eine zügige Löschung der Nachrichten, damit die Übergabetabelle in Business Central nicht unnötig anwächst.