Tabellen
KT_Transfer Tables Setup
hier werden die zu transferierenden Tabellen definiert mit Quell-ID und Ziel-ID, man braucht also nur die Tabellen-Nummern aus Nav
KT_Transfer Fields Setup
hier werden dann je Tables Setup ID die zu transferierenden Felder festgelegt mit Namen des Quell-Feldes und Namen des Ziel-Feldes. Das muss dann allerdings schon der SQL-Name des Feldes sein
KT_Transfer Tables Log
enthält das Protokoll, das vom Transfer erzeugt wird
Funktionen
KT_getDefaultTransferFieldsSetup
erzeugt für eine Tabellen-Setup ID eine Zuordnung aller Felder in der Ziel-Tabelle zu namensgleichen Feldern in der Quell-Tabelle.
Hier kann man auch über das Feld Active
festlegen, dass eine Spalte nicht übertragen wird.
KT_getEmptyValueForNavColumn
Hilfsfunktion, die den entsprechenden Wert für Leer abhängig von der übergebenen Spalte ermittelt. Wird gebraucht, wenn Spalten nicht übertragen werden oder in der Quell-Tabelle nicht existieren
KT_getValidNavTableName
baut aus übergebenem Mandanten-Namen und Tabellen-Namen anhand der ndoProperties-Tabelle von Nav den korrekten SQL-Objekt-Namen auf
KT_getNavTableFieldList
wird jetzt eigentlich nicht mehr gebraucht. Baut eine Komma-separierte Liste aller Feldnamen einer Tabelle auf
Prozeduren
KT_sp_CopyNavTableDataFromRemote
die Prozedur führt den eigentlichen Transfer der Daten aus der Quell-Tabelle in die Ziel-Tabelle aus
KT_sp_TransferTables
über diese Prozedur wird der Transfer anhand der Einrichtungs-Tabellen gestartet. Die Prozedur schreibt auch das Protokoll.
Darüber hinaus gibt es das SQL-Skript Install_Script.sql
. Das legt drei weitere Funktionen an, die mit der Quell-Datenbank arbeiten. Die müssen dynamisch angelegt werden, da in der späteren Funktion kein dynamisches SQL mehr möglich ist. Das Install-Skript benötigt als Parameter den Namen des Linked Servers, der die Verbindung zur Quelle herstellt und den Namen der Quell-Datenbank.