Weiterführende Themen
Datensynchronisation der Endgeräte
rocklog Edge ist eine offline first Application. Alle für die Arbeit auf dem Endgerät notwendigen Daten werden auf dem Endgerät vorgehalten. Innerhalb von Prozesse werden keine Daten synchron vom Server nachgeladen. Die Vorteile dieses Ansatzes sind
- sehr schneller Aufstart der Anwendung auf Tablet und Mobiltelefon
- Auch ohne Netzwerkverbindung ist die Anwendung nutzbar
- Es finden keine zeitintensiven Abfragen der Serverdatenbank statt noch der synchrone Aufruf von Businesslogik auf dem Server
Der Nachteil dieser Architektur sind
- ein Eventual Consistency der Endgerätedaten. D.h Änderungen der Daten durch ein Endgerät sind erst nach einer kurzen Zeit und sobald eine Netzwerkverbindung besteht auf dem Server und anderen Endgeräten sichtbar
- Nach der Hinzunahme neuer Endgeräte sind nicht sofort alle Daten auf den Geräten verfügbar
Datensynchronisation vom Server zum Endgerät
Der Server hält dauerhaft eine Liste aller Datenbankänderungen. Diese Liste ist das Journal. Ein Endgerät weiss stets, bis zu welchem Zeitpunkt es die Journaleinträge und die entsprechenden Stamm- und Bewegungsdaten abgeholt hat. Stellt ein Endgerät fest, dass Journaleinträge noch nicht nachgeführt wurden, dann werden iterativ mit einer bestimmten Frequenz die Journaleinträge geladen und somit die Daten des Endgerätes synchronisiert.
Da die Synchronisation die parallele Abfrage von Daten durch Geschäftsprozesse wie das Scannen von Lagerort- und Bestandsbarcodes verlangsamt, wird innerhalb performancekritischer Prozesse wie der
Einzelumlagerung
Umlagerung von Beständen durch Scannen eines Quellortes und eines Zielortes
Massenumlagerung
Scan aller Bestände eines zu scannenden Lagerortes auf einen Ziellagerortes
die Anzahl der innerhalb eines Synchronisationsschrittes verarbeiten Datensätz deutlich reduziert (von max. 8000 auf 200).
Die ungefähre Anzahl an zu synchronisierenden Journaleinträgen wird in der Anwendung wie im folgenden Screenshot ersichtlich dargestellt.

Datensynchronisation vom Endgerät zum Server
Auf dem Endgerät werden Änderungen der Daten durch Geschäftsprozesse immer erst lokal durchgeführt. Anschliessend wird der Auftrag entsprechenden zur Anpassung der Daten auf dem Server in eine Warteschlange geschrieben. Besteht eine Netzwerkverbindung zwischen Endgerät und Server, dann werden die Aufträge in der Warteschlange peu-a-peu abgearbeitet. Sollte es bei der Abarbeitung der der Aufträge zu Fehlern kommen oder der Server ist nicht erreichbar, dann wird dieser Zustand auf dem Endgerät als Hinweis für den User hervorgehoben dargestellt.

Sollte trotz bestehender Netzwerkverbindung keine Verarbeitung der Synchronisationaufträge erfolgen, dann sollte der User dies dem Firstlevel Support seiner Organisation oder aber dem Support von rocklog melden.