Synchronisation

Home  Zurück  Weiter

Der Synchronisation-Manager ist die Datensynchronisations-Schnittstelle zum Datenaustausch mit externen Rechnern (Außendienst). Über diese Schnittstelle können fachbezogene/gruppenbezogene Datenausschnitte vom Datenserver für mehrere externe Rechner zur Verfügung gestellt werden.

 

Hinweis

Hinweis

Die Synchronisation wird von allen Developer-Fachmodulen unterstützt. Ein Developer-Fachmodul erkennt man daran, dass der Gruppe eine Konfigurationsdatei (*.GCF) zugeordnet ist.
Für die Nutzung der Synchronisation in einem vorhandenen Fachmodul müssen im GeoAS Management Metadaten-Eintragungen für die entsprechenden Relationen vorgenommen werden. Die einzelnen Schritte sind in diesem Kapitel erläutert.
Für einen einwandfreien Ablauf der Synchronisation muss der Anwender Schreibrechte auf das lib-Verzeichnis (im GeoAS Installationsverzeichnis) haben, damit im Ordner Synchronisation die entsprechenden Steuerdateien modifiziert werden können.

 

hmtoggle_plus1Konfiguration und Vorbereitung

Wenn Sie in einem vorhandenen Fachmodul die Synchronisation nutzen möchten, führen Sie bitte folgende Schritte im GeoAS Management durch:

Einstellungen in Datengruppen:

Öffnen Sie die Registerkarte Datengruppen und markieren Sie die für die Synchronisation vorgesehene Datengruppe bzw. die darin enthaltenen Relationen, um nachfolgend beschriebene Eintragungen vornehmen zu können:

Tabellenebene: Metadaten
Tabellenebene: Metadaten
Für die von der Synchronisation betroffenen Haupttabelle tragen Sie in der Registerkarte Metadaten bei "Schlüssel" die Syntax Synchronisation und und bei "Wert" die Syntax True ein.
Durch diese Eintragungen erhält das Fachmodul die Information, dass alle Daten der eingetragenen Tabelle, sowie alle im Datenmodell verknüpften Daten bei der Synchronisation berücksichtigt werden sollen. Sobald die Synchronisation aktiviert ist, werden alle mit der Haupttabelle verlinkten Relationen standardmäßig bei der Synchronisation berücksichtigt.
Falls Sie eine verlinkte Tabelle (und alle über diese Verlinkung eingebundenen Tabellen) von der Synchronisation ausschließen möchten, ist dies explizit anzugeben. Tragen Sie dazu für die entsprechende Relation bei "Schlüssel" die Syntax SyncType und bei "Wert" die Syntax NoSync ein.
Hinweis:
Dieser Eintrag muss zusätzlich auch in der entsprechenden Konfigurationsdatei (*.GCF) vorgenommen werden. In die Tabelle "MetaRelationen" tragen Sie in die Spalte "Table" den Tabellennamen, in die Spalte "Key" SyncType und in die Spalte "Value" NoSync ein.
Kennzeichnen Sie gegebebenfalls Nachschlagetabellen/Steuerungstabellen für die Synchronisation (wie nachfolgend beschrieben).

 

Nachschlagetabellen bzw. Steuerungstabellen:

Eine Nachschlagetabelle ist beispielsweise eine Tabelle mit zwei Spalten, wobei die eine ein in die Datenbank einzutragendes Kürzel bzw. eine Nummer beinhaltet und die andere einen Langtext, der zur Anzeige auf der Karteikarte dient. Ein weiteres Beispiel für eine Nachschlagetabelle ist die Steuerungstabelle einer TreeBox.

Um diese Nachschlagetabellen ebenfalls zu exportieren, müssen diese gekennzeichnet werden. Tragen Sie dazu im GeoAS Managemet für die Nachschlagetabelle(n) bei "Schlüssel"die Syntax SyncType und bei "Wert" die Syntax Lookup ein. Nachschlagetabellen werden schreibgeschützt exportiert, aber nicht wieder importiert.
Hinweis:
Dieser Eintrag muss zusätzlich auch in der entsprechenden Konfigurationsdatei (*.GCF) vorgenommen werden. In die Tabelle "MetaRelationen" tragen Sie in die Spalte Table den (die) Namen der Nachschlagetabelle(n), in die Spalte "Key" das Schlüsselwort SyncType und in die Spalte "Value" Lookup ein.

Die Tabellen der Controls LinkBox und DropTable werden vom Programm automatisch als Nachschlagetabellen definiert und werden somit schreibgeschützt exportiert.

Die Synchronisation stellt einen weiteren Schalter zur Verfügung, über den festgelegt werden kann, dass bestimmte Tabellen (zusätzlich zu den verlinkten Karteikarten-Tabellen) als leere Tabellen exportiert werden. Beim Import werden gegebenenfalls erfaßte Datensätze an die Bestandstabelle angehängt. Ein Primärschlüsselüberprüfung bzw. Datenabgleich findet nicht statt.

Dazu tragen Sie für die entsprechende Relation bei Schlüssel die Synatx "SyncType" und bei Wert die Syntax "ImportOnly" ein.
Hinweis:
Dieser Eintrag muss zusätzlich auch in der entsprechenden Konfigurationsdatei (*.GCF) vorgenommen werden. In die Tabelle "MetaRelationen" tragen Sie in die Spalte "Table" den Tabellennamen, in die Spalte "Key" SyncType und in die Spalte "Value" ImportOnly ein.

 

Einstellungen in Benutzer (optional):

Öffnen Sie die Registerkarte Benutzer und markieren Sie den für die Synchronisation vorgesehenen Benutzer, um nachfolgend beschriebene Eintragungen vornehmen zu können:

Tabellenebene: Metadaten
Tabellenebene: Metadaten
Der GeoAS Administrator kann im GeoAS Management benutzerspezifische Exportverzeichnisse für die Synchronisation definieren.
(Ist ein Exportverzeichnis definiert, kann der Benutzer beim Export im entsprechenden Dialog kein alternatives Verzeichnis auswählen.)

 

Hinweis

Hinweis

Bei allen Eintragungen im GeoAS Management ist die Groß-Kleinschreibung zu beachten!
Bei der Haupttabelle muss es sich nicht zwingend um eine grafische Haupttabelle (kartierbare Relation) handeln. Für Konfigurationen, bei denen die Haupttabelle nicht über eine eigene Grafik verfügt, kann beispielsweise auch die verlinkte Grafiktabelle als „Haupttabelle" eingesetzt werden.
Falls Sie mit einer Historienverwaltung arbeiten, wird beim Export eine leere Historientabelle exportiert und beim Import wird diese wieder importiert.

Initialisierung/ErststartInitialisierung

Nachdem die Einstellungen im GeoAS Management vorgenommen worden sind, muss die Synchronisationsfunktionalität mit dem Laden der Datengruppe einmalig initialisiert werden.

Selektieren Sie dazu ein beliebiges Objekt der zu synchronisierenden Relation und rufen Sie aus dem Menü Manager die Funktion Synchronisation auf. Bei dieser Initialisierung erscheint folgende Meldung:

manager_synchronisation4.zoom75
(vergrößern)

 

War das Einrichten der Synchronisation erfolgreich, erscheint eine Nachricht als Bestätigung.

An alle Relationen, die an der Synchronisation beteiligt sind, wurden jeweils eine Spalte "SyncID" angehängt.

Durch die Erweiterung der Datenstruktur, wurden die betroffenen Relationen aus dem Kartenfenster entfernt wurden.

Schalten Sie die betreffende Gruppe/Relationen bitte über die Gruppen-/Layerkontrolle wieder an (Gruppe wiederherstellen).

manager_synchronisation5.zoom75
(vergrößern)

 

Hinweis

Hinweis

Für den Erststart ist es erforderlich, dass die betreffende Gruppe (einmalig) mit "Ändern"-Rechten geöffnet wird, damit die erforderlichen Änderungen der Relationsstruktur automatisch erfolgen können. Anderenfalls erscheinen  entsprechende Meldungen.
manager_synchronisation9.zoom75
(vergrößern)

 
oder
 
manager_synchronisation10.zoom75
(vergrößern)

 
manager_synchronisation11.zoom75
(vergrößern)

hmtoggle_plus1Datenexport

Um Daten (beispielsweise für den Außendienst) zu exportieren, selektieren Sie die entsprechenden Objekte (im Kartenfenster oder Anzeigefenster) und rufen Sie anschließend über das Menü <Manager> die Funktion <Synchronisation> auf, um den Synchronisationsmanager zu starten.

 

In der ersten Zeile des Dialogs wird stets der aktuelle Export aufgelistet.

Geben Sie ein Verzeichnis für die exportierten Daten und eine Beschreibung an und klicken Sie anschließend auf Export. Das Verzeichnis muss beim Export leer sein.

Hinweis: Gegebenenfalls hat der GeoAS Administrator ein benutzerbezogenes Exportverzeichnis vordefiniert. In diesem Fall ist kein anderes Verzeichnis wählbar.
(Ausführlichere Informationen dazu entnehmen Sie bitte der Dokumentation GeoAS Management.

(Ist die Export-Schaltfläche nicht aktiv, wurden vorab keine zu exportierenden Objekte selektiert oder es ist ein Datensatz in der Liste markiert, der bereits importiert wurde.)

manager_synchronisation1.zoom80
(vergrößern)

 

Wurde der Export erfolgreich durchgeführt, wird die Meldung "Export abgeschlossen!" angezeigt. (Zudem stehen dann die Funktionen Import und Verwerfen zur Verfügung.)

manager_synchronisation2.zoom80
(vergrößern)

 

Mit dem Export werden die selektierten Objekte und Tabelleninhalte, sowie alle damit verknüpften Daten aus Untertabellen in ein separaten Verzeichnis exportiert. Alle exportierten Datensätze, sowie die entsprechenden Daten des Hauptdatenbestandes erhalten eine eindeutige Synchronisations-Identifikationsnummer (SyncID).

 

Sofern in dem angegebenen Exportverzeichnis bereits namensgleiche Relationen liegen sollten, erscheint ein entsprechender Hinweis. Sie haben die Wahl, die bestehenden Relationen zu überschreiben oder den Vorgang abzubrechen.

 

Die ausgewählten Objekte sowie alle damit verknüpften Daten und die Nachschlage-Tabellen werden in das Export-Verzeichnis exportiert. Im Originalbestand werden die entsprechenden Datensätze mit einer eindeutigen SyncID gekennzeichnet.

Die Exportrelation erhält in der *.tab-Datei einen entsprechenden Eintrag:

ReadOnly

begin_metadata

"\IsReadOnly" = "FALSE"

"\SyncID" = "1"

end_metadata

 

manager_synchronisation6.zoom50
(vergrößern)

 

Exportierte Objekte werden im Datenbestand durch die Sync-ID gekennzeichnet und können bis zum späteren Import über die Karteikarten nicht mehr bearbeitet werden.

Sind ein oder mehrere exportierte Objekte selektiert, erscheint beim Aufruf der Karteikarte ein entsprechender Hinweis, bevor die Karteikarte im Auskunftsmodus geöffnet wird.

manager_synchronisation7.zoom75
(vergrößern)

 

Beim Versuch, dieselben Objekte oder eine Auswahl bereits exportierter Objekte erneut zu exportieren, erscheint nach Aktivierung der Schaltfläche „Export" ein entsprechender Hinweis.

Bearbeitung exportierter Objekte

Im Außendienst können die exportierten Daten wie gewohnt bearbeitet, gelöscht und auch neu angelegt werden. Lediglich die Nachschlage-Tabellen sind hier schreibgeschützt.

manager_synchronisation8.zoom80
(vergrößern)

 

Hinweis

Hinweis

Für den Erststart ist es erforderlich, dass die betreffende Gruppe (einmalig) mit "Ändern"-Rechten geöffnet wird, damit die erforderlichen Änderungen der Relationsstruktur automatisch erfolgen können. Anderenfalls erscheinen  entsprechende Meldungen.
 
manager_synchronisation9.zoom75
(vergrößern)

 
manager_synchronisation11.zoom75
(vergrößern)
Vorsicht

Vorsicht

Die Sperrung wirkt nicht, wenn Daten -insbesondere Primärschlüssel und SyncID’s- manuell im Karten- oder Anzeigefenster manipuliert werden!
Achtung, Datenverlust möglich!

hmtoggle_plus1Datenimport

Der Datenimport liest alle Daten aus einem Verzeichnis ein und gleicht diese mit Hilfe der Identifikationsnummer mit dem Hauptdatenbestand ab. Die Synchronisation unterstützt geänderte, gelöschte und neu angelegte Datensätze.

Um einen Datenbestand aus der Außendienstbearbeitung wieder zu importieren, rufen Sie den Synchronisationsmanager erneut auf. Markieren Sie den entsprechenden Datensatz. Der aktuelle Datensatz wird immer rot selektiert. Stellen Sie sicher, dass die zu importierenden Daten auch tatsächlich in dem angegeben Verzeichnis liegen, gegebenenfalls ändern Sie das Verzeichnis.

Manager_Synchronisation2

 

Import

Nach Betätigung der Schaltfläche "Import" werden die Daten wieder in den Original-Datenbestand übernommen und mit den Bestandsdaten abgeglichen. Die Synchronisation vergleicht die eindeutige SyncID und die Primärschlüssel und aktualisiert vorhandene Daten. Neue Datensätze werden hinzugefügt, entfernte Datensätze gelöscht.

Die ursprünglich im Exportverzeichnis gespeicherten Relationen werden beim Import gelöscht (aber zuvor in einer *.zip-Datei gesichert).

Manager_Synchronisation3

 

Die Exportrelation bleibt erhalten, der Eintrag in der *.tab-Datei wird angepasst:

ReadOnly

begin_metadata

"\IsReadOnly" = "FALSE"

"\SyncID" = ""

end_metadata

 

Sollten in mehreren Import-Datenbeständen neue Objekte mit den gleichen neuen Primärschlüsseln angelegt worden sein, werden diese abgeglichen und - wenn möglich - durch neue, eindeutige Schlüssel ersetzt.

Sollte dies der Fall sein, wird zusätzlich ein Import-Protokoll angelegt und im Synchronisations-Manager die Schaltfläche „Protokoll" aktiviert. Das Import-Protokoll besteht aus einer Textdatei, die im Datenverzeichnis gespeichert wird und über die Protokoll-Schaltfläche direkt aufgerufen werden kann.

Die Protokoll-Schaltfläche bleibt aktiv, solange das Protokoll existiert.

Nach dem erfolgreichen Import sind diese Datensätze im Haupt-Datenbestand wieder bearbeitbar und exportierbar. In die Synchronisationsübersicht wird das Importdatum eingetragen.

 

Verwerfen

Sofern der Export fehlerhaft vorgenommen wurde bzw. exportierte Daten nicht wieder importiert werden sollen, besteht die Möglichkeit, den Exportauftag zu verwerfen. Berechtigt dazu ist nur die Benutzer, der auch den Export durchgeführt hat (siehe Spalte Benutzer) oder Administratoren.

Markieren Sie die entsprechende Zeile des Exportauftrages, der verworfen werden soll und aktivieren Sie die Schaltfläche Verwerfen.

 

Aufträge löschen

Die Einträge bleiben im Synchronisations-Manager aufgelistet, solange sie nicht über das Kontextmenü der rechten Maustaste oder die Entf-Taste gelöscht werden.

 

Hinweis

Hinweis

Da zur gleichen Zeit mit Auszügen aus demselben Hauptdatenbestand gearbeitet werden kann, liegt die Hauptaufgabe der Synchronisation in der Verwaltung der Primärschlüssel und der SyncID’s. Um einen eindeutigen Abgleich zu gewährleisten, ist die Verwendung eines Primärschlüssels vom Typ Ganzzahl (Integer) zu empfehlen. Nur so können bei doppelten Schlüsseln automatisch neue Schlüssel generiert werden.
 
Wird als Primärschlüssel z. B. eine Textspalte verwendet, müssen die Anwender selbst darauf achten, dass keine doppelten Schlüssel im Außendienst produziert werden. Die Synchronisations-Routine meldet in diesem Fall zwar doppelte Schlüssel, kann aber die Daten nicht automatisch bereinigen.
 
In diesem Fall kann mit der Funktion Doppelte Werte finden eine Datenprüfung vorgenommen werden.
Vorsicht

Vorsicht

Bitte beachten Sie, dass es beim Löschen von Synchronisationsaufträgen zu Dateninkonsistenzen kommen kann.
 
Beispiel: Ein Auftrag wird mit der "ID 50" in das Verzeichnis "Hausen_Nord" exportiert. Anschließend wird dieser Auftrag gelöscht (die Daten bleiben im Verzeichnis "Hausen_Nord" bestehen). Der nächste Auftrag wird folglich wieder mit der "ID 50" erzeugt (da die "ID 50" durch das Löschen wieder freigeworden ist). Die Daten werden nun beispielhaft allerdings in das Verzeichnis "Hausen_Süd" exportiert. Dateninkosistenzen können nun auftreten, wenn beim Import nicht das Verzeichnis "Hausen_Süd" sondern das Verzeichnis "Hausen_Nord" angegeben wird. Denn die Daten aus "Hausen_Nord" haben ebenfalls die "ID 50" und können somit importiert werden. Nach dem Import wird der Auftrag „ID 50" geschlossen und die Daten aus dem eigentlichen Verzeichnis "Hausen_Süd" können nicht mehr importiert werden.