FileMaker-Scripts und FileMaker Data API
Ein FileMaker-Script enthält eine oder mehrere Anweisungen (Scriptschritte), die Sie definieren, um sich wiederholende oder schwierige Aufgaben zu automatisieren. In Kombination mit dem FileMaker Data API ermöglichen FileMaker-Scripts den Webdiensten, mehrere Aufgaben oder eine Aufgabenserie auszuführen. Siehe FileMaker-Scripts ausführen.
Um Scriptschritte zu sehen, die das FileMaker Data API unterstützt, klicken Sie im FileMaker Pro-Scriptarbeitsbereich auf Kompatibilität und wählen Sie FileMaker Data API. Scriptschritte, die nicht grau dargestellt werden, werden für das FileMaker Data API unterstützt. Einige Scriptschritte funktionieren anders oder werden im FileMaker Data API nicht unterstützt. Weitere Informationen finden Sie unter Erstellen und Bearbeiten von Scripts in der FileMaker Pro Hilfe.
Scripts, die von FileMaker Data API ausgeführt werden, können keine Scripts in anderen FileMaker-Dateien ausführen, falls die Dateien nicht auf demselben Host bereitgestellt werden. Für die anderen FileMaker-Dateien muss das erweiterte Zugriffsrecht „fmrest“ aktiviert sein.
In FileMaker Pro können sowohl Scripts als auch Benutzeraktionen (wie zum Beispiel ein Benutzer, der in ein Feld klickt) Script-Trigger aktivieren. In FileMaker Data API-Lösungen können jedoch nur Scripts Script-Trigger aktivieren. Informationen zu Script-Triggern finden Sie unter Einrichten von Script-Triggern in der FileMaker Pro Hilfe.
Hinweise
-
Beachten Sie die Datenmenge und die Anzahl der Datensätze, die ein Script zurückgeben kann, und definieren Sie die Scripts entsprechend. In FileMaker Pro kann ein Script alle Datensätze aus einer Tabelle oder der aktuellen Ergebnismenge zurückgeben. Wenn jedoch ein Script alle Datensätze aus einer Tabelle liefert, verfügt ein Webdienst möglicherweise nicht über genügend Arbeitsspeicher, um die Datensätze zu verarbeiten.
-
Bei FileMaker Data API-Lösungen wird der Script-Trigger „BeiErstemFensterÖffnen“ nicht aktiviert. Der Script-Trigger „BeiLetztemFensterSchließen“ wird nur aktiviert, wenn ein Script das letzte virtuelle Fenster schließt. Sie können Scripts manuell über den Script-API-Endpunkt oder durch Einfügen der Parameter
script.prerequest
undscript.presort
undscript
-Parameter in den Abfragetext ausführen. -
Verwenden Sie Konten und Zugriffsrechte, um die Scripts einzuschränken, die ein Webdienst ausführen kann. Stellen Sie sicher, dass die Scripts nur webkompatible Scriptschritte enthalten und nur Zugang zu Scripts gewähren, die von einem Webdienst ausgeführt werden sollen.
-
Berücksichtigen Sie die Auswirkungen von Scripts, die eine Kombination von Schritten ausführen, die durch Zugriffsrechte gesteuert werden. Wenn ein Script beispielsweise einen Scriptschritt zum Löschen von Datensätzen enthält und der Webdienst sich nicht mit einem Konto anmeldet, das das Löschen von Datensätzen zulässt, führt das Script den Scriptschritt zum Löschen von Datensätzen nicht aus. Das Script könnte jedoch weiter ausgeführt werden, so dass unerwartete Ergebnisse auftreten können.
-
Verwenden Sie in FileMaker Pro den Scriptarbeitsbereich, um einem Script vollständige Zugriffsrechte zu gewähren, damit das Script Aufgaben ausführen kann, auf die Sie Benutzer keinen Zugriff gewähren würden. Beispielsweise können Sie verhindern, dass Benutzer mit ihren Konten und Zugriffsrechten Datensätze löschen, ihnen aber die Ausführung eines Scripts erlauben, das unter vordefinierten Bedingungen innerhalb des Scripts bestimmte Datensätze löscht.
-
FileMaker Data API-Endpunkte bestätigen Datenänderungen unmittelbar, Scripts können Datensätze aber unbestätigt hinterlassen. Zum Beispiel könnte eine Sitzung ein Script ausführen, das einen Datensatz bearbeitet, aber nicht bestätigt. Die nächste Sitzung würde dann einen Fehler erhalten, wenn sie versucht, den gleichen Datensatz zu bearbeiten. Oder in einer einzelnen Sitzung könnte ein Script einen Datensatz bearbeiten, dann ein neues Fenster erstellen und anschließend das zweite Script aufrufen, das versucht, den gleichen Datensatz zu bearbeiten. Prüfen Sie auf jeden Fall die Scriptergebnisse und prüfen Sie auf Scriptfehler.
-
Scripts, die Daten ändern, sollten den Scriptschritt „Schreibe Änderung Datens./Abfrage“ enthalten, da auf Datenänderungen erst zugegriffen werden kann, wenn die Daten auf dem Server gespeichert wurden. Dies gilt für Scriptschritte wie Ausschneiden, Kopieren oder Einfügen. Viele Aktionen mit nur einem Scriptschritt sollten in Scripts umgewandelt werden, die den Schritt „Schreibe Änderung Datens./Abfrage“ enthalten. Wenn Sie Scripts entwerfen, die von einem Webdienst ausgeführt werden, nehmen Sie den Schritt „Schreibe Änderung Datens./Abfrage“ am Ende des Scripts auf, um sicherzustellen, dass alle Änderungen gespeichert werden.
-
Öffnen Sie jedes Script, das Webbenutzer ausführen könnten, und stellen Sie sicher, dass das Script richtig ausgeführt wird, wenn die Datenbank als FileMaker Data API-Lösung bereitgestellt wird. Stellen Sie sicher, dass das Script nur Scriptschritte verwendet, die vom FileMaker Data API wie oben beschrieben unterstützt werden.