Tipps und Tricks

Vorhandene Werte mit Update entfernen

Bei der Synchronisation von Stammdaten oder auch bei Nachverschlagwortungen kann es u. U. vorkommen, dass Werte in der Quelle nicht mehr vorhanden sind, die aber schon einmal im Ziel eingetragen wurden. Die Update-Aufgabe, welche Daten im Zielsystem aktualisiert, ignoriert standardmäßig Werte, die in der Quelle nicht vorhanden sind, da es keine Output-Variable gibt. Das bedeutet, im Ziel steht dann noch immer der vorher eingetragene Wert, da ohne den fehlenden Wert in der Quelle das entsprechende Feld im Zielsystem bei Aktualisierungen einfach ignoriert wird.

Lösung mit dem ILS:

Mit der Funktion FNothing lässt sich in solchen Fällen eine leere Variable erzeugen, die beim Update berücksichtigt wird. Mit dieser werden noch vorhandene Werte im Ziel entfernt.
Der Funktion FNothing muss die entsprechende Output-Variable als Parameter übergeben werden. Existiert diese, wird deren Wert in die Zielvariable geschrieben, ansonsten wird eine leere Zielvariable erzeugt. Damit werden im Ziel immer die richtigen Werte eingetragen, auch wenn diese "leer" sind.

Dies wird in den folgenden zwei Grafiken deutlich:

Hier sieht man die Ausgabe der Suche. Die Ausgabe-Variablen enthalten Daten wie zum Beispiel Name, Kontaktdaten, die Steuernummer oder UStId-Nummer. Der Funktion FNothing muss die entsprechende Output-Variable zugewiesen werden.

Hier ist das Update zu sehen.

Die roten Markierungen zeigen die zugewiesenen Ergebnisvariablen aus der Funktion FNothing. Diese enthalten entweder den Wert aus der Quelle oder keinen Wert, wenn der Wert in der Quelle nicht mehr vorhanden ist. Da die Variablen immer existieren, werden die entsprechenden Felder im Ziel immer entweder aktualisiert oder geleert.

Zurück