Daten offline eingeben und hochladen
Die Beispiellösung 01-AddRecord.mtd (Startbildschirm siehe unten) befindet sich im folgenden Ordner (Eigene) Dokumente: Altova\MobileTogetherDesigner10\MobileTogetherDesignerExamples\Tutorials\OfflineUsage. Öffnen Sie die Datei in MobileTogether Designer und starten Sie eine Simulation (F5), um zu sehen, wie dies funktioniert.
Datensätze können bei dieser Lösung auf einem Client-Gerät eingegeben werden. Jeder Datensatz wird einzeln eingegeben und in einer SQLite-Datenbank Addresses.sqlite auf dem Server gespeichert, bevor der nächste Datensatz eingegeben wird. Während der Bearbeitung wird der Datensatz auf dem Client in der Seitenquelle $PERSISTENT gespeichert (siehe Abbildung unten). Der Server-Zugriff der Lösung wurde durch die Einstellung Bei Bedarf eingeschränkt, wodurch die Lösung nur dann mit dem Server kommuniziert, wenn dies erforderlich und im Workflow der Lösung explizit definiert wurde. Bis zu diesem Zeitpunkt ist die Lösung offline und die Daten des Datensatzes werden eingegeben, während die Lösung offline ist. Wenn der Benutzer auf Upload to database now klickt, verbindet sich die Lösung auf dem Client mit dem Server, um die Datensätze in die SQLite-Datenbank auf dem Server hochzuladen.
Schlüsseleinstellungen
Im Folgenden sind die Schlüsseleinstellungen der 01-AddRecord.mtd-Lösung und die Einstellungen zum Offline-Arbeiten erläutert.
Die Einstellung "Daten laden"
Die Einstellung Daten laden ist auf diese Lösung nicht anwendbar, da die Lösung nur eine Seitenquelle, nämlich $PERSISTENT, hat, die sich auf dem Client befindet und für die daher keine Daten geladen werden müssen. (Da nur der neue Datensatz - und nicht alle Datenbankdatensätze - auf dem Client angezeigt werden soll, wird für die Datensätze der Datenbank keine weitere Seitenquelle benötigt.
Die Einstellung "Daten speichern"
Die Einstellung Daten speichern ist auf die Seitenquelle $PERSISTENT nicht anwendbar.
Die Einstellung "Server-Zugriff"
Die Einstellung Server-Zugriff wurde auf Bei Bedarf gesetzt. Aus diesem Grund wird der Server nur kontaktiert, wenn der neue Datensatz auf dem Server hochgeladen werden muss.
Dies geschieht bei Klick auf Upload to database now. Das Ereignis BeiSchaltflächenklick löst die folgenden Aktionen aus:
1.eine DB ausführen-Aktion, die eine SQL-Anweisung ausführt, die die Daten der $PERSISTENT-Struktur als neuen Datensatz in der Server-Datenbank speichert.
2.eine Node aktualisieren-Aktion, um einzelnen die Nodes der $PERSISTENT-Struktur jeweils auf den leeren String zu setzen. Dies ist erforderlich, damit die Daten des nächsten Datensatzes eingegeben werden können.
Anmerkung: Klicken Sie im Design auf das Ereignisaktionen-Symbol (in der Abbildung oben rot umrandet), um zu sehen, wie die (oben beschriebenen) Aktionen zum Aktualisieren der Datenbank definiert wurden.