Jens Liebelt FileMaker Consulting - FM4Web CMS für FileMaker

FileMaker Script Kommentare sinnvoll nutzen

Vorwort

FileMaker Script Verwaltung

© Screenshot Jens Liebelt

FileMaker Script Verwaltung

Dieser Artikel ist keine Einführung in FileMaker Script. Vielmehr geht es um die Notwendigkeit von Kommentaren in FileMaker Scripten. Wer FileMaker Script nur rudimentär nutzt, kann sicherlich auf Kommentare verzichten, wer hingegen ganze Anwendungen in FileMaker erstellt tut gut daran sich auf ein einheitliches System zur Kommentierung der Funktion im allgemeinen und den Scriptabschnitten insbesondere zu halten.

Komplexe Scripte bestehen aus vielen Scriptbefehlen. Häufig werden zusätzlich Teilscripte (Funktionen) ausgeführt, Parameter übergeben oder empfangen, Schleifen durchlaufen und Variablen verwendet. Damit man in diesem Gebilde der Abhängigkeiten die Übersicht behält, ist es absolut notwendig, die Schritte zu kommentieren.

Top

Allgemein

Am Anfang vom Script sollte ein allgemeiner Kommentarblock stehen, in dem der Autor, das Datum, Kontaktdaten und die Beschreibung ( Aufgabe vom Script) vermerkt sind.

# -------------------------------------------------------------------------------
# Jens Liebelt
# Mai 2011
# web@jens-liebelt.de
#
# FM4Web
# Slider für den Seitenkopf der Webausgabe erstellen.
#
# Dieses Script wechselt das Layout.
# Bei Aufruf als Teilscript muss das aufrufende Script wieder in das
# Originallayout wechseln.
# -------------------------------------------------------------------------------

Top

Historie

Wenn das Script im Laufe der Entwicklung der Datenbank geändert wird, sollte ein Kommentarblock für die Historie eingefügt werden. Die Historie zeigt welche Änderungen, wann ausgeführt wurden und wer die Änderungen vorgenommen hat.

# -------------------------------------------------------------------------------
# Historie
#
# 21.05.2011 Bugfix
# Jens Liebelt
# Fehlerhafter Zustand der Variablen $_dateiname nach Ausführung
# vom dem Teilscript Bildgröße berechnen.
# -------------------------------------------------------------------------------

Top

Variablen

Komplexe Scripte benutzen in der Regel Variablen für die Ablaufsteuerung und die Berechnung von Feldwerten. Grundsätzlich sollte von dieser Möglichkeit immer Gebrauch gemacht werden, es ist aber notwendig, sich für eine einheitliche Schreibweise und Bezeichnung für Variablen zu entscheiden.

Globale Variablen sollten sparsam eingesetzt und gemeinsam in einem Teilscript initialisiert werden, damit man jederzeit sieht welche globalen Variablen in der Anwendung verwendet werden.

Lokale Variablen, deren Gültigkeit auf das aktuelle Script beschränkt ist, sollten in einen Kommentarblock vermerkt werden.

# -------------------------------------------------------------------------------
# Lokale Variablen
#
# $_dateiname
# $_dateipfad
# $_dateisuffix
# -------------------------------------------------------------------------------

Top

Scriptparameter

Der Einsatz von Teilscripten und lokalen Variablen erfordert häufig den Einsatz von Scriptparametern (Argumente). Auf diesem Wege kann der Wert einer lokalen Variablen an ein Teilscript übergeben werden, ohne den Ausgangswert im aktuellen Script zu verlieren, bei Bedarf kann der aktuelle Wert durch das Ergebnis vom Teilscript ersetzt werden (Hole ScriptErgebnis).

# -------------------------------------------------------------------------------
# Scriptparameter
# $_dateiname - Weitergabe an Teilscript Dateiname aufbauen
# $_dateipfad - Weitergabe an Teilscript Dateiname aufbauen
# -------------------------------------------------------------------------------

Top

Scriptabschnitte

Die Abschnitte in einem Script sollten in Blöcken kommentiert werden. Das heißt jeder Abschnitt der eine in sich geschlossene Abfolge von Befehlen darstellt wird in einem Kommentarblock gefasst.

Top

Beispiel

#--------------------------------------------------------------------------------
# Slider 1
# hier sollten auch weitere Erläuterungen platziert werden,
# in Abhängigkeit von der Komplexität des Blockes.
#--------------------------------------------------------------------------------
Wenn < Server::_slider pic 1 ≠ "" >
Variable setzen < $_dateiname; Wert:"slider_1" & ZeichenRechts ( Server::_slider 1 imgPath ; 4 ) >
Exportiere alle Feldwerte < Server::_slider pic 1; “file:html/images/slider/$_dateiname” >
Variable setzen < $_slider; Wert:$_slider & "<img src=\"../images/slider/" & $_dateiname &"\" alt=\"" &Server::_slider 1 altText &"\" />¶" >
Ende (wenn)
#--------------------------------------------------------------------------------
# Slider 2
#--------------------------------------------------------------------------------
Wenn < Server::_slider pic 2 ≠ "" >
Variable setzen < $_dateiname; Wert:"slider_2" & ZeichenRechts ( Server::_slider 2 imgPath ; 4 ) >
Exportiere alle Feldwerte < Server::_slider pic 2; “file:html/images/slider/$_dateiname” >
Variable setzen < $_slider; Wert:$_slider & "<img src=\"../images/slider/" & $_dateiname &"\" alt=\"" &Server::_slider 2 altText &"\" style=\"display:none;\"/>¶" >
Ende (wenn)

Top

Scriptschritte

Wichtige Einzelschritte können dann zusätzlich kommentiert werden. Kommentare sollen helfen und nicht verwirren. Es bringt nichts jeden Scriptschritt minuziös zu kommentieren, das stört den Lesefluss im Quelltext dann gewaltig.

Top

Fazit

Der Aufwand für Kommentare in FileMaker Scripten lohnt sich langfristig auf jeden Fall. Selbst der gute Design Report aus der Advanced Version ersetzt nicht die Funktion von Kommentaren, er kann sie aber sinnvoll ergänzen. Wer FileMaker Datenbanken für Kunden entwickelt ist aus meiner Sicht, gerade zu gezwungen eine transparente Dokumentation der eigenen Scripte zu liefern. Die Intervalle für die Pflege der Datenbank für Kunde xy können sehr verschieden sein, Zeiträume von bis zu 1 Jahr sind keine Ausnahme. Ohne sinnvolle Kommentare erschließen sich dann manche Scripte nur sehr schwer.

Top

FileMaker Beispiele

weitere Kapitel zum Thema