DB-Bulk-Einfügung in
Mit der Aktion "DB-Bulk-Einfügung in" werden die über den XPath-Ausdruck des Werte-Felds bereitgestellten Daten als neue Zeilen an die in der Einstellung DB-Bulk-Einfügung in ausgewählte Datenbanktabelle angehängt (siehe Abbildung unten).
•DB-Bulk-Einfügung in: Bei der Auswahl der gewünschten Datenbanktabelle müssen Sie die DB-Verbindungsmethoden definieren und anschließend die Tabelle auswählen, in die die neuen Zeilen eingefügt werden sollen. Die neuen Zeilen werden an die vorhandenen Tabellenzeilen angehängt. Die ausgewählte Tabelle wird im Feld DB-Bulk-Einfügung in zusammen mit ihren Spalten aufgelistet. In der Abbildung oben hat die ausgewählte Tabelle den Namen B und besitzt zwei Felder, nämlich Field1 und Field2.
•Andere Tabelle: Mit Hilfe eines XPath-Ausdrucks kann eine andere Tabelle als die in DB-Bulk-Einfügung in ausgewählte definiert werden. Die neuen Zeilen werden auch in diese Tabelle eingefügt. Diese Tabelle muss bereits vorhanden sein und muss Spalten enthalten, die denselben Namen wie die in DB-Bulk-Einfügung in ausgewählten Spalten haben. Sie kann zusätzliche Spalten enthalten, wenn diese Standardwerte enthalten oder auf Null gesetzt werden können. Außerdem muss der Datentyp der einzelnen Spalten mit dem Datentyp der entsprechenden in DB-Bulk-Einfügung in ausgewählten Spalte übereinstimmen. In der Abbildung oben werden die neuen Zeilen in die Tabelle NewDB eingefügt. Um die Zeilen erfolgreich einfügen zu können, muss die Tabelle NewDB zwei Spalten namens Field1 und Field2 haben. Auch die Datentypen müssen übereinstimmen: Die erste Spalte muss den Datentyp "number", die zweite den Datentyp "string" haben. Wenn die bereitgestellten Werte nicht mit dem Datentyp der Spalte übereinstimmen, wird versucht, die Datentypen zu konvertieren.
•Werte: Der XPath-Ausdrucks des Felds Werte muss eine Sequenz von Arrays zurückgeben, wobei jedes Array für eine Zeile und jeder Wert in einem Array für einen Spaltenwert steht. In der Abbildung oben wird jedes Array in eine neue Zeile platziert. Beachten Sie die verschiedenen Arten, auf die Array-Elemente instantiiert werden.
Wir haben in der Abbildung oben eine "Neu laden"-Aktion verwendet, um die Datenbank-Seitenquelle, die die geänderte Tabelle enthält, zu aktualisieren.
Fehlerverarbeitung
Mit der Option Bei Fehler können Sie definieren, wie bei Auftreten eines Fehlers vorgegangen wird. Da die Fehlerbehandlung für diese Aktion genau definiert werden kann, werden Fehler in solchen Aktionen (für die eine Fehlerbehandlung vorgesehen ist) als Warnungen und nicht Fehler behandelt. Der Vorteil davon ist, dass Sie Fehler bei Aktionen, für die bereits eine Fehlerbehandlung definiert wurde, nicht überprüfen müssen. Die folgenden Fehlerbehandlungsoptionen stehen zur Verfügung:
•Skript abbrechen: Sobald ein Fehler auftritt, werden alle nach diesem Ereignis durchzuführenden Aktionen beendet. Dies ist das Standardverhalten bei Auftreten eines Fehlers. Wenn Sie möchten, dass auch bei einem Fehler fortgefahren werden soll, wählen Sie entweder die Option Weiter oder Throw aus.
•Weiter: Die Aktionen werden nicht beendet. Sie können stattdessen auswählen, was in jedem der beiden Fälle (kein Fehler (Bei Erfolg) oder Auftreten eines Fehlers (Bei Fehler)) geschehen soll. So kann z.B. ein Meldungsfeld definiert werden, das den Benutzer darüber informiert, ob eine Seite erfolgreich geladen werden konnte oder nicht.
•Throw: Wenn ein Fehler aufgetreten ist, wird mit dieser Option eine Ausnahme ausgelöst, die in der Variablen der Try/Catch-Aktion gespeichert wird. Mit dem Catch-Teil der Try/Catch-Aktion wird definiert, welche Aktion bei Auftreten eines Fehlers durchgeführt werden soll. Wenn kein Fehler auftritt, wird die nächste Aktion verarbeitet. Nähere Informationen dazu finden Sie im Abschnitt zur Aktion "Try/Catch Ausnahme".
MobileTogether-Erweiterungsfunktionen
MobileTogether enthält eine Reihe von XPath-Erweiterungsfunktionen, die speziell für die Verwendung in MobileTogether-Designs erstellt wurden. Einige davon können bei bestimmten Aktionen sehr nützlich sein. So erhalten Sie etwa mit mt-available-languages() die Sprachen, in denen die Lösung zur Verfügung steht. Diese Funktion könnte z.B. mit der Aktion Meldungsfeld verwendet werden. Wenn eine Funktion für diese Aktion besonders relevant ist, ist sie unten aufgelistet. Eine vollständige Liste aller Erweiterungsfunktionen und mit Beschreibungen finden Sie im Kapitel MobileTogether-Erweiterungsfunktionen.
mt-available-db-connection-names()
mt-db-any-changed-fields()
mt-db-any-changed-rows()
mt-db-deleted-original-fields()
mt-db-deleted-original-rows()
mt-db-file-path()
mt-db-modified-fields()
mt-db-modified-rows()
mt-db-new-fields()
mt-db-new-rows()
mt-db-original row()
mt-external-error-code()
mt-external-error-text()