Scripts können einfache Aufgaben wie das Festlegen einer Seitenausrichtung oder komplexe Aufgaben wie das Vorbereiten eines kundenspezifischen Serienbriefs erledigen.
Sie könnten zum Beispiel eine komplexe Reihe von Aufgaben definieren, um ein Dankschreiben an alle Kunden in Ihrer Kundendatenbank zu verfassen, die in der letzten Woche Einkäufe getätigt haben. Das Script generiert eine maßgeschneiderte E-Mail für jeden Kunden. Dann wechselt das Script in die Seitenansicht und pausiert, damit Sie sehen können, wie die Nachricht aussieht, bevor sie versendet wird. Sie lösen den gesamten Vorgang aus, indem Sie im Layout „Verkaufseingabe“ auf eine Taste klicken.
Sie erstellen Scripts, indem Sie aus einer Liste von FileMaker Pro Advanced-Befehlen, sogenannten Scriptschritten, wählen, bei Bedarf Optionen angeben und die Schritte in der korrekten Reihenfolge für die Aufgabe anordnen.
Scripts werden gewöhnlich auf dem Client ausgeführt, aber einige Scripts sollten zur verbesserten Leistung oder in einem automatisierten Plan auf FileMaker Server oder FileMaker Cloud ausgeführt werden. Weitere Informationen finden Sie unter Ausführen von Scripts auf FileMaker Server und FileMaker Cloud.
Je mehr Zeit Sie sich für die Planung Ihres Scripts nehmen, umso wahrscheinlicher wird die gewünschte Aufgabe perfekt erledigt. Stellen Sie sich bei der Planung diese Fragen:
•Können Sie die Aufgabe in mehrere kleinere Aufgaben gliedern? Sie können ein Teilscript für jede kleinere Aufgabe definieren und dann ein übergeordnetes Script, das die Teilscripts ausführt. In der Regel ist es einfacher, mehrere kleine Scripts zu erstellen und zu testen, als ein einziges komplexes Script zu definieren. Sie können Teilscripts auch in anderen Bereichen wieder verwenden. (Verwenden Sie den Scriptschritt „Script ausführen“, um ein Teilscript in einem anderen Script auszuführen.)
•Welche Scriptschritte sollten unter welchen Bedingungen ausgeführt werden? Soll jeder Scriptschritt immer ausgeführt werden? Sollten einige mehrmals ausgeführt werden, bis eine bestimmte Bedingung erfüllt ist? Soll das Script andere Scripts und Teilscripts aufrufen? Sie können den Ablauf des Scripts auf verschiedene Weise steuern. Weitere Informationen über die Erstellung von Scripts mit bedingten Schritten finden Sie unter Scriptschritte für die Steuerung.
•Soll das Script in einem bestimmten Layout ablaufen? Da Scripts auf Dateiebene definiert werden und sich von einem beliebigen Layout aus aufrufen lassen, sollten Sie sicherstellen, dass die Ausführung im erwarteten Layout erfolgt. Verwenden Sie den Scriptschritt „Gehe zu Layout“, um das Layout zu wechseln.
•Soll das Script auf alle Datensätze in der Datenbank, auf die aktuell aufgerufenen Datensätze oder auf eine bestimmte Gruppe von Datensätzen zugreifen? (Verwenden Sie die Scriptschritte für Ergebnismengen, um nur die Datensätze in die Ergebnismenge aufzunehmen, mit denen Sie arbeiten wollen.)
•Befinden sich alle benötigten Daten in einer Datenbankdatei oder muss das Script auf mehrere Dateien zugreifen? Welche Datei soll das Script öffnen, wenn Sie mehrere Dateien bearbeiten? In welcher Datei sollte das bzw. die Scripts definiert werden? In den meisten Fällen wird das Script am besten in derselben Datei definiert wie die Daten, die es verarbeitet. Datenbanklösungen, die aus mehreren Dateien bestehen, benötigen abhängig von der Komplexität der Aufgabe, die das Script erledigen soll, eventuell in jeder Datei separate Scripts.
•Mit welchem Datensatz soll das Script beginnen? Wenn Sie z. B. den Scriptschritt „Schleife (Anfang)“ verwenden, müssen Sie festlegen, ob die Schleife mit dem ersten, dem letzten, einem bestimmten oder dem aktuellen Datensatz in der Ergebnismenge beginnt. (Verwenden Sie den Scriptschritt „Gehe zu Datens./Abfrage/Seite“, Scriptschritt „Gehe zu Bezugsdatensatz“ oder den Scriptschritt „Gehe zu Ausschnittreihe“, um einen Anfangsdatensatz festzulegen. Wenn Sie keinen Scriptschritt für die Navigation einfügen, um den aktuellen Datensatz festzulegen, beginnt die Schleife mit dem Datensatz, der bei Ausführung des Scripts aktuell ist.)
•Welches Fenster möchten Sie verwenden? Ein Script ist anfänglich einem bestimmten Fenster zugeordnet, das sich im Hintergrund befinden kann. Das Script bleibt bei diesem Fenster, bis eine Scriptaktion zu einem anderen Fenster wechselt. Verwenden Sie zum Beispiel den Scriptschritt „Fenster aktivieren“, um ein anderes Fenster anzugeben. Wenn das angegebene Fenster nicht verfügbar ist, wechselt das Script zum vordersten Fenster der Datei. Wenn Sie ein Script anhalten, wechselt das zugehörige Fenster nach vorn, falls es verfügbar ist. Weitere Informationen finden Sie unter Scriptschritte für Fenster.
•Soll das Script den Modus wechseln? Ein Script kann im Blättern-, Suchen-, Layout- oder Seitenansichtsmodus ablaufen. Stellen Sie sicher, dass sich Ihr Script im korrekten Modus befindet, bevor es mit der Ausführung beginnt. Wechseln Sie z. B. mit dem Scriptschritt „Blätternmodus aktivieren“ in den Blätternmodus, bevor Sie Daten in Feldern und Datensätzen ändern, und verwenden Sie den Scriptschritt „Suchenmodus aktivieren“, bevor Sie eine Suchabfrage einrichten oder Daten suchen.
Hinweis Scripts, die im Layoutmodus aufgerufen werden, wechseln vor ihrer Ausführung automatisch in den Blätternmodus.
•Welche Felder und Layouts sind für das Script erforderlich? Einige Schritte (z. B. der Scriptschritt „Gehe zu Feld“ und der Scriptschritt „Text einfügen“) verlangen ein Feld im aktuellen Layout, andere (wie der Scriptschritt „Feldwert setzen“) hingegen nicht. Verwenden Sie entweder den Scriptschritt „Gehe zu Layout“, um das Layout zu wechseln, das die erforderlichen Felder für Ihr Script enthält, oder platzieren Sie die Felder in den grauen Bereich rechts neben dem Layout, damit sie für Scriptschritte, aber nicht für Benutzer verfügbar sind.
•Sollen die Datensätze in einer bestimmten Reihenfolge verarbeitet werden? Entscheiden Sie sich zwischen der aktuellen Sortierfolge, einer angegebenen Sortierfolge oder der unsortierten Reihenfolge (die Reihenfolge, in der die Datensätze erstellt wurden). Verwenden Sie den Scriptschritt „Sortieren“ oder den Scriptschritt „Sortierung aufheben“, bevor Sie eine Schleife beginnen, damit Ihre Datensätze vor der Verarbeitung korrekt angeordnet sind.
•Wie soll das Script durch mehrere Felder oder Datensätze navigieren? (Verwenden Sie den Scriptschritt „Gehe zu Datens./Abfrage/Seite“, den Scriptschritt „Schleife (Anfang)“, den Scriptschritt „Verlasse Schleife wenn“ und den Scriptschritt „Schleife (Ende)“, um die Verarbeitung mehrerer Felder oder Datensätze zu steuern.)
•Wann soll das Script beendet werden? Nachdem alle Scriptschritte ausgeführt wurden? Wenn eine bestimmte Bedingung erfüllt ist? (Verwenden Sie den Scriptschritt „Wenn“, den Scriptschritt „Sonst, wenn“ und den Scriptschritt „Sonst“, um eine Aufgabe wie z. B. den Scriptschritt „Aktuelles Script verlassen“ zu erledigen, wenn für das Script eine bestimmte Bedingung eintritt.)
•Soll es den Benutzern erlaubt sein, ein Script während der Ausführung anzuhalten? Enthält das Script einen Prozess, der zu unvollständigen oder inkorrekten Daten führen kann, wenn das Script zu früh beendet wird? Verwenden Sie den Scriptschritt „AnwenderAbbruchZulassen setzen“, um zu steuern, ob Benutzer ein Script anhalten dürfen.
•Wie testen Sie Ihr Script? Verwenden Sie den Scriptschritt „Scriptpause setzen“, um die Ausführung Ihres Scripts an bestimmten Stellen anzuhalten. Speichern Sie eine Kopie Ihrer Datenbank und definieren und testen Sie Ihr Script im Clone, um die Originaldaten zu bewahren.
Hinweis Sie können Ihre Scripts mit dem Script-Debugger testen und Probleme beheben. Weitere Informationen finden Sie unter Debuggen von Scripts.
•Wie werden Fehlerbedingungen behandelt (z. B. eine leere Ergebnismenge)? Mithilfe der Funktion „Hole ( LetzteFehlerNr )“ können Sie die letzte Fehlerbedingung aufzeichnen, die FileMaker Pro Advanced gemeldet hat. Verwenden Sie diese Funktion und den Scriptschritt „Wenn“, den Scriptschritt „Sonst, wenn“ sowie den Scriptschritt „Sonst“, um Scripts zu erstellen, die Benutzerfehler oder unerwartete Ergebnismengen sinnvoll behandeln. Verwenden Sie für noch bessere Kontrolle den Scriptschritt „Fehleraufzeichnung setzen“, um die üblichen Fehlermeldungen in diesen Situationen zu unterdrücken, und den Scriptschritt „Eigenes Dialogfeld anzeigen“, um die Fehlermeldungen durch Ihre eigenen zu ersetzen.
•Soll es allen Benutzern erlaubt sein, alle Scripts auszuführen? Verwenden Sie Berechtigungen, um den Zugriff der Benutzer auf Scripts zu steuern. Damit können Sie Benutzern erlauben, einzelne Scripts, keine Scripts oder alle Scripts auszuführen oder zu ändern. Sie können auch die Standarderlaubnis für jede Berechtigung für alle zukünftigen neuen Scripts festlegen, die in der Datei definiert werden. Indem Sie ein Script auf die Ausführung mit vollen Zugriffsrechten einstellen, kann das Script für den Benutzer Aktionen ausführen, die normalerweise nicht zu den zugewiesenen Zugriffsrechten des Benutzers gehören. Weitere Informationen finden Sie unter Erstellen und Bearbeiten von Berechtigungen.
•Wie werden Benutzer das Script ausführen? Sie müssen entweder eine Taste für die Ausführung des Scripts erstellen oder festlegen, dass das Script in das Menü „Scripts“ aufgenommen wird. Scripts können auch im Scriptarbeitsbereich oder beim Aktivieren eines Script-Triggers gestartet werden. Zum Beispiel können Sie den Script-Trigger „BeiErstemFensterÖffnen“ verwenden, um ein Script auszuführen, wenn die Datenbank geöffnet wird.
Sobald Sie diese Fragen geklärt haben, können Sie beginnen, Scripts in Ihrer Datenbank zu verwalten. Weitere Informationen finden Sie unter Erstellen und Bearbeiten von Scripts.