Sie sind auf Seite 1von 7

Datenmodellierung

Karsten Risseeuw
(Jg. 1961) Religionslehrer, Typograf, Fotograf,
Besitzer einer Bildagentur, Software­entwicklung
und Consulting für Bild­datenbanken, FileMaker
ab FileMaker Pro 12 Entwickler.
karsten@kursiv.com

Nachdruck aus dem


FileMaker Magazin
siehe auch: www.filemaker-magazin.de

Modulare Konzepte
FileMaker Module und neue Ansätze

Todd Geist hat auf der Website modularfilemaker.org eine Das heißt nicht, dass die Programmierung in dem einen Fall
schlichte Idee für FileMaker Module präsentiert, die immer besser und im anderen schlechter ist, sondern nur, dass sich
mehr Anhänger findet. Ausgehend von dieser Idee habe der Weg zum Endresultat unterscheidet.
ich eine schlanke Entwicklungsumgebung erarbeitet,
die sich weitgehend auf FileMaker Module stützt. Diese Dem Dogmatiker geht es um das Einhalten der Prinzipien
beiden Ansätze können dazu beitragen, die FileMaker Ent- und Konventionen, da seiner Ansicht nach damit die bes-
wicklung für viele zu vereinfachen. Im vorliegenden Artikel ten Voraussetzungen für erfolgreiche Programmierung ge-
erläutere ich die dahinterstehenden Überlegungen und schaffen werden. Bei dem Pragmatiker hingegen steht das
Konzepte. Endresultat im Fokus – der Weg dorthin ist für ihn weniger
relevant. Beide stolpern irgendwann über die Grenzen des ei-
Einfacher ist besser. Wer mit FileMaker anfängt, tut das häu- genen Ansatzes: Während der Dogmatiker Gefahr läuft, sich
fig, weil der Einstieg besonders leicht ist und fast jeder sofort in endlosen Konventionen zu verheddern, kann dem Pragma-
ansehnliche Resultate erzielen kann. Das ist eine der großen tiker aufgrund fehlender Strukturen schon mal die Übersicht
Stärken von FileMaker. Doch Programme entwickeln sich, abhanden kommen. Wahrscheinlich war es dieser Zusam-
Anforderungen steigen und bevor man es merkt, wurde aus menhang, in dem die Ideen zur Modularität aufkamen, denn
einem einfachen Anfang eine komplexe Lösung. Schwerwie- Module können die Programmierung sowohl vereinfachen als
gender als die Komplexität ist jedoch die sich oft einstellende auch strukturieren.
Unübersichtlichkeit, die die Pflege und Weiterentwicklung
behindert oder auf Dauer gar unmöglich macht. Gibt es einen
Weg zurück in die Vereinfachung?
Modularität
Modularität ist der Ansatz, eine Struktur aus Teilbereichen,
Es gibt verschiedene Ansätze zur Strukturierung und Harmo- Komponenten und Bausteinen zu gestalten. Module sind
nisierung der Entwicklung, beispielsweise Programmierricht- Funktionen oder Aufgabenbereiche, die mehr oder weniger
linien, man erstellt sich eine Startdatei oder entwickelt gar ein abgekapselt sind und über Schnittstellen mit den übrigen
umfassendes System – „Leitplanken“, die dabei helfen sollen, Programmteilen kommunizieren. Modularität bietet für
nachvollziehbar und sicher ans Ziel zu gelangen. Im Glücks- den Dogmatiker wie für den Pragmatiker Vorteile, denn sie
fall wird dabei gleichzeitig die Entwicklungsdauer reduziert. verringert einerseits die Komplexität, weil sie mit kleineren
In der Realität sieht es allerdings so aus, dass fast jeder Ent- Komponenten arbeitet, und stellt andererseits eine sinnvolle
wickler seine eigenen „Leitplanken“ erstellt. Die FileMaker Struktur zur Verfügung.
Entwickler sind eine sehr heterogene Gruppe mit ganz unter-
schiedlichen Vorgehensweisen: Während einige sehr struktu- Natürlich ist auch die Modularität ein weit gefächerter Be-
riert arbeiten und die Konventionen millimetergenau imple- reich und so gibt es ganz unterschiedliche Ansätze und Ar-
mentieren, können andere damit überhaupt nichts anfangen. ten der Umsetzung. Während der Dogmatiker höchstwahr-

FMM_201501  © 1994 – 2015  K&K Verlag GmbH, Hamburg 7


Nachdruck aus dem
Datenmodellierung FileMaker Magazin
siehe auch: www.filemaker-magazin.de

scheinlich eine exakte Definition bevorzugen wird, zelebriert Beim Aufruf des Hauptscripts kann beispielsweise das Ein-
der Pragmatiker den schnellsten Weg zur Umsetzung. Es er- stellungsscript eingelesen werden. Das hat gleich zwei Vortei-
scheint deshalb angebracht, noch einmal grundsätzlich über le: Erstens sind alle Einstellungen oder änderbare Parameter
die Art der gewünschten Modularität nachzudenken – vor al- an einem einzigen Ort abgelegt und zweitens wird die An-
lem, wenn sie sich im Hinblick auf eine möglichst große Zahl passung von Modulen an neue Projekte ganz entscheidend
von Anwendern bewähren soll. Auf dieses Thema kommen vereinfacht. Wenn ich ein Modul benutze, das jemand anders
wir später genauer zu sprechen. erstellt hat, muss ich mich nicht mit dem anderen Program-
mierstil herumschlagen, sondern lediglich die Parameter aus
Bei dem Begriff „Modul“ denken viele an konkrete Lösun- dem Einstellungsscript richtig konfigurieren, sodass das Mo-
gen, wie z. B. ein Adress- oder ein Rezeptmodul. Das ist na- dul für meine Situation angepasst wird.
türlich eine mögliche Anwendung der Grundidee, aber es gibt
auch andere Herangehensweisen. Todd Geist beispielswei- Aufbau von FileMaker Modulen
se hat in viel kleineren Einheiten gedacht. Nach seiner Idee
sind FileMaker Module möglichst kompakte und fokussierte Eine wichtige Voraussetzung ist, dass ein Modul in sich funk-
Funktionen, wie beispielsweise eine Suchfunktion, eine vir- tioniert – mit allen Tabellen, Feldern, Scripts und Layouts so-
tuelle Liste oder Ähnliches, die eine einzige, klar definierte wie weiteren Einstellungen, die alle spezifisch zu diesem einen
Aufgabe lösen und sich an ganz verschiedenen Stellen im Pro- Modul gehören. Die Ablagestruktur sieht aus diesem Grund
gramm nutzen lassen. für jedes Modul einen eigenen Ordner vor. So gibt es beispiels-
weise im Script-Fenster einen Ordner „Module“, in dem sich
2012 lancierte Todd Geist die Website modularfilemaker.org, für jedes Modul ein Ordner mit dem Modulnamen befindet.
wo er die Idee von FileMaker Modulen präsentiert: kleine, Dieselbe Struktur lässt sich auch für Layouts nutzen. Dass
funktionelle Einheiten für die tägliche Programmierarbeit, eine Datei durch diese Herangehensweise mehr Tabellen und
die sich – das ist seine zentrale Anforderung – einfach aus- Layouts enthält als es sonst der Fall wäre, hat keinen Einfluss
tauschen lassen. Anders als bei den meisten Entwicklungs- auf die Performance, erhöht die Übersichtlichkeit aber enorm.
plattformen schreibt man in FileMaker keinen Code, alle Wer anfängt, nach diesen einfachen Vorgaben zu strukturie-
Funktionalität ist in Dateien eingebunden. Zwar lassen sich ren, merkt rasch, dass Querverweise von Scripts auf zentrale
beispielsweise Scripts oder Tabellen importieren, Layouts andere Tabellen oder Layouts dem Konzept widersprechen
aber nicht. Der Austausch programmierter Funktionalitäten – so wird einer Programmierung, bei der alles mit allem ver-
wird von FileMaker nicht unterstützt. Hier kommt die Idee knüpft ist (Spaghetti-Programmierung), entschieden entge-
von FileMaker Modulen ins Spiel: Mit einer simplen Struktur gengewirkt. Bestehen Abhängigkeiten zu anderen Modulen,
werden Teile der Programmierarbeit aus- und in einem neuen müssen diese in einem „ReadMe-Script“ sauber deklariert
Projekt wieder eingegliedert. Damit kommen wir dem Traum werden. Auch dieses Script ist fester Bestandteil der Ablage-
vom wiederverwendbaren Code einen Schritt näher. struktur, sodass jeder weiß, wo er nach Angaben zur Integra-
tion suchen muss.
Als Vehikel für den Austausch dienen Modul-Dateien.
FileMaker Dateien enthalten alles, was FileMaker zu bie-
ten hat, weshalb Dateien die einzige umfassende Lösung für
den Datenaustausch sind. Modul-Dateien transportieren die
Funktionalität. Möchte man ein Modul in die eigene Lösung
integrieren, dann bietet das Modul eine Schritt-für-Schritt-
Anleitung, wie die Tabellen, Scripts und Layouts in die eigene
Datei übernommen werden können.

Diese FileMaker Module kennen keine Programmierricht­


linien und keine komplexen Konventionen, sondern stellen
eine Ablagestruktur dar, die beispielsweise Ordner für die Ab-
lage von Scripts oder Layouts betrifft. Im Klartext: Jeder kann
programmieren wie er will, wenn er nur die Ablagestruktur
einhält.

Eine weitere wichtige Eigenschaft von FileMaker Modulen


bezieht sich auf die Trennung von Funktionalität und Para-
metrisierung. Damit Scripts einfach an neue Projekte ange-
passt werden und auch andere Programmierer mit den Mo-
dulen arbeiten können, werden die ausführenden Scripts von
den Einstellungsscripts getrennt. Aus diesem Grund lagere
ich spezielle Tabellenverweise, Textlabels oder andere spezifi- Im Script-Ordner lässt sich am deutlichsten erkennen, dass FileMaker Module eine
sche Parameter in einem Einstellungsscript aus. klare und einfache Struktur haben.

8 FMM_201501
Nachdruck aus dem
FileMaker Magazin
siehe auch: www.filemaker-magazin.de
Datenmodellierung

Es gibt übrigens keine Vorgabe, dass ein Modul zwingend Ta- sich selbst stetig verbessern und neue Versionen seiner Module
bellen, Layouts oder Scripts verwenden muss. Ich habe einige veröffentlichen – alles innerhalb derselben Struktur. Punkt 2
Module erstellt, die lediglich aus Scripts bestehen und nur op- erleichtert die Integration und die Modulpflege. Beide Punk-
tional mit Tabellen oder Feldern zusammenarbeiten. Weitere te zusammen definieren jedoch noch lange nicht, bis zu wel-
Angaben zu FileMaker Modulen sind direkt auf der Website chem Grad tatsächlich modular programmiert wird.
modularfilemaker.org zu finden. In diesem Artikel möch-
te ich den Fokus eher auf die Konzepte als auf die technische Es gibt auch keine Vorgaben zum Programmierstil oder dazu,
Umsetzung legen. wie sich Module am besten integrieren lassen. Hier sind noch
viele Fragen offen, und es wird sich zeigen, was sich am besten
Programmierrichtlinien oder bewährt. Das Gute ist, dass jeder an der Beantwortung dieser
Strukturen? Fragen mitarbeiten und seinen Beitrag leisten kann. Außer-
dem regt das Fehlen von ausformulierten Konventionen den
Wohin führen diese Erfahrungen? Und wie geht es weiter? Austausch und die Kreativität an. So entstehen im Laufe der
Seit etwa einem halben Jahr stelle ich einige Module auf mei- Zeit die „Best Practices“.
ner Website kostenlos zur Verfügung. Rückmeldungen von
Anwendern zeigen, dass es gerade die einfache Struktur dieser Ich kann mir vorstellen, dass diese Formulierungen für einige
FileMaker Module ist, die eine rasche Akzeptanz, Integration zu vage sind und sie sich fragen, ob ein System bzw. eine Kon-
und Umsetzung möglich macht. Man muss sich nicht in Kon- vention nicht viel effizienter wäre. Gibt es nicht bereits viele
ventionen eindenken, sondern kann direkt anfangen, mit den bewährte Methoden? Das stimmt. Ein Regelwerk aufzustel-
Modulen zu arbeiten. len ist aber nur eine Methode, etwas in die Hand zu nehmen,
weshalb ich im Folgenden zwei Herangehensweisen nebenei-
Selbst Anfänger können ein Modul, das sie z. B. von modu- nander gestellt habe:
larfilemaker.org heruntergeladen haben, meist mit wenigen
Schritten erfolgreich in die eigene Lösung integrieren. Der
Einstieg ist super leicht, auch weil die Integrationshilfe Teil
A. Das System
der Script-Struktur ist. Außerdem spielt es kaum eine Rol- Es wird ein Regelwerk definiert, wie programmiert werden
le, nach welchen Programmierrichtlinien ein Modul erstellt soll. Dazu gibt es vielleicht eine oder mehrere Starterdateien,
wurde. Entscheidend ist, ob es sich einfach einbinden, para- Konventionen für die Benennung von Dateien, Scripts, Lay-
metrisieren und nutzen lässt. Genau das erlaubt die Idee der outs, Feldnamen usw., sodass ein fantastisches System ent-
FileMaker Module. steht, das von A bis Z durchdacht ist … Natürlich kann nur
das berücksichtigt werden, was den Entwicklern des Systems
„Man soll es so einfach wie möglich machen, aber nicht ein- bis dato in den Sinn gekommen ist und was gerade aktuell in
facher.“ Dieser Spruch, der Einstein zugeschrieben wird, lässt und mit FileMaker möglich ist. Weil besonders viel definiert
sich auch auf die Modularität anwenden – es geht um eine ist, wird es an diesem System besonders viel zu ändern geben.
Gratwanderung zwischen Definition und Freiheit, zwischen Da es sich aber um ein Regelwerk handelt, stolpert das System
Programmierrichtlinien und schlichten Strukturen. In den über die eigenen Regeln, wenn die Programmentwicklung in
letzten zwei Jahren habe ich festgestellt, dass eine schlichte eine Richtung geht, für die noch keine Regeln bestehen, oder
Struktur und Zugänglichkeit vielleicht mehr zum Erfolg einer neue FileMaker Versionen und Funktionalitäten alte Regeln
Idee beitragen als eine mehr oder weniger rigide Konvention, überflüssig machen. Dies erfordert regelmäßige Aktualisie-
egal wie gut durchdacht sie ist. rungen.

Das liegt vermutlich daran, dass der größte Knackpunkt bei Stellen Sie sich vor, Sie haben ein Projekt angefangen, bei
der Programmierung die Vereinfachung ist – Komplexität dem Sie System 1.0 eingesetzt haben. Ein halbes Jahr später
entsteht von selbst, die Vereinfachung ist die Kunst. Sollten arbeiten Sie an einem weiterem Projekt, mit der mittlerweile
künftig weitere Konzepte zur modularen Programmierung aktuellen Version 1.32. Es folgen weitere Projekte und weite-
mit FileMaker entstehen, erwarte ich, dass die Faktoren re Systemversionen. Wer das warten und supporten muss, ist
„Schlichtheit“ und „Zugänglichkeit“ über die Akzeptanz ent- bei jedem Projekt an das Regelwerk der einzelnen Systemver­
scheiden, wie das übrigens bei allen Gebrauchsgegenständen sionen gebunden und muss entweder alle Systeme auf densel-
der Fall ist. ben Stand bringen oder mit unterschiedlichsten Regelwerken
zurechtkommen. Die Konsistenz wird also nur mit hohem
An der Idee von Todd Geist sehe ich zwei Dinge als wegweisend: Aufwand erreicht. Wer soll das bezahlen?
1) Die Struktur ist wichtiger als jede Konvention
2) Funktionalität und Parametrisierung werden getrennt
B. Die modulare Struktur
Hier steht nicht das System im Vordergrund, sondern die
Punkt 1 erlaubt es jedem Entwickler, mit seinem aktuellen Struktur. Nicht alles ist definiert, aber alles hat einen (un-
Wissensstand einzusteigen und sich auf den Weg zu machen, gefähren) Platz. Die Entflechtung der Funktionen, Scripts,
einfacher und modularer zu programmieren. Dabei kann er Tabellen und dergleichen ist weit fortgeschritten: Es gibt Mo-

FMM_201501  9
Nachdruck aus dem
Datenmodellierung FileMaker Magazin
siehe auch: www.filemaker-magazin.de

dule für verschiedenste Funktionen, auf die immer wieder zu- Dass sich mit beiden Varianten gute Lösungen erstellen las-
rückgegriffen werden kann. sen, soll keineswegs angezweifelt werden. Doch der Ausgangs-
punkt dieses Artikels war die Frage, ob es einen Weg zurück
Fehlt eine Funktion, kann problemlos ein Modul eines ande- in die Vereinfachung gibt. Nehme ich diese Frage als Leit­
ren Entwicklers integriert werden, auch wenn der Program- faden, kann ich in größeren Systemen keine Vereinfachung
mierstil ein anderer ist. Sollte ein größeres Projekt entstehen, erkennen, bei modularen Ansätzen sehe ich jedoch ein großes
können verschiedene Entwickler mit der Erstellung einzelner Potenzial dafür.
Module beauftragt werden, die sich später zu einem Gesamt-
system zusammenschließen lassen. Die einzige Vorgabe wäre,
dass die Module sich einfach in die modulare Struktur ein-
betten lassen. Wenn mit der Zeit verschiedene Projekte reali-
siert werden, entstehen zwar auch hier Differenzen zwischen
den Versionen, aber es ist keine Aktualisierung verschiede-
ner Konventionen nötig, sondern lediglich der Abgleich von
Modulfunktionalitäten. Bei Bedarf können sogar Module
ausgetauscht werden, ohne dass ein „System“ dadurch infrage
gestellt wird.

Auch bei den Layouts wird dieselbe Struktur wie im Script-Fenster beibehalten

Module und modulare Systeme


Todd Geist spricht von FileMaker Modulen und meint damit
unabhängige, auf bestimmte Funktionen getrimmte Kompo-
nenten. Spinnt man den Gedanken etwas weiter, könnte ein
Modul nicht nur eine Funktion, sondern auch einen Lösungs-
bereich beinhalten, etwa eine funktionierende Datenbank
mit einer bestimmten Aufgabe (Adressmodul, Verkaufsmo-
dul, Bilddatenbank usw.). Auch Module dieser zweiten Grup-
pe könnten unabhängig, also ohne Verweise auf andere Teile
funktionieren.

Etwas anderes ist es jedoch, wenn man von „modularen Syste-


men“ spricht. Diese können zwar ebenfalls Module einsetzen,
definieren aber nicht nur die allgemeine Struktur, sondern
auch die Schnittstellen. Insofern stellt ein modulares System
eine Hybrid-Version eines Systems und eines modularen An-
FM Starter nutzt und erweitert die Struktur im Script-Fenster, Ordner für
­Module und Fenster sind vorgegeben. Weitere Entwicklungen landen vermutlich satzes dar. Selbstredend hat man hier sowohl die Vor- als auch
im Ordner „Application specific“ („spezifisch für die Anwendung“). die Nachteile beider Herangehensweisen.

Auch wenn es realistisch erscheint, eine offene Struktur durch Jeder dieser Ansätze hat seine Berechtigung, doch man könn-
diverse Konventionen zu ergänzen, sind es nicht die Konventi- te sich überlegen, welche Art der Modularität (ohne die an-
onen, die im Vordergrund stehen, sondern der Fokus liegt auf dere Varianten auszuschließen) die interessanteste Weiterent-
der offenen, leichten Struktur. Weil viel mit Bausteinen gear- wicklung verspricht. Ich selbst habe mich – in Anlehnung an
beitet wird, bleibt diese Struktur flexibel, denn die Bausteine die Ideen von Todd Geist – für folgende Betrachtungsweise
sind weitgehend unabhängige Komponenten. entschieden: Die Struktur ist wichtiger als ein Regelwerk,

10 FMM_201501
Nachdruck aus dem
FileMaker Magazin
siehe auch: www.filemaker-magazin.de Datenmodellierung

weil sie mir größere Flexibilität und vermutlich auf Dauer eine an und es wurden bereits viele Elemente als FileMaker Module
größere Vereinfachung erlaubt. Außerdem sind freistehende eingebunden. FM Starter will Hilfe zur Selbsthilfe anbieten,
Module für mich interessanter als Systeme, weil mit ihnen wobei die Datei vermutlich nichts perfekt macht, aber trotz-
Abhängigkeiten vermieden werden. Ich möchte dadurch pro- dem eine ganze Reihe von Anforderungen löst. FM Starter ist
jekt- und „System“-unabhängige Programmierung fördern. ein Anfangspunkt für neue Projekte und zeigt eine Richtung
Würde ich nach einem Stichwort zur Definition dieser Rich- für die weitere Entwicklung an.
tung gefragt, wäre das nicht „Modularität“, sondern vielmehr
„Entflechtung“. Obwohl die Idee zu diesem Projekt primär meinen eigenen
Bedürfnissen entsprang, habe ich doch auch im Austausch
Die Entflechtung mit anderen Entwicklern regelmäßig gehört, dass sowohl eine
Art Modularität wie auch eine eigene Starterdatei sehr hilf-
Ausgehend von Todd Geists Konzept der FileMaker Baustei- reich wären. Ein weiterer Punkt, der mich angetrieben hat,
ne habe ich nach einem Ansatz gesucht, der über diese kom- war meine eigene Anfangszeit mit FileMaker: Viele Themen
pakten Module hinausgeht. Todd Geist selbst macht dazu musste ich mir mühsam erarbeiten und die Suche nach guten
keinerlei Aussage und bietet weder Vorgaben noch Empfeh- Lösungen hat Jahre beansprucht. Wie froh wäre ich um eine
lungen an. Das ist auch richtig so, denn wie es weitergeht, ist solche integrierte Starterlösung gewesen, die mir enorm viel
nicht das Thema von modularfilemaker.org. Er legt die Ver- Entwicklungszeit gespart hätte. Auch mein Lernprozess wäre
antwortung in die Hände der Entwickler – zweifellos auch, um einiges schneller gewesen, denn nichts ist so hilfreich wie
damit weitere innovative Ideen gefunden werden. Auf seiner der Einblick in die Arbeit eines anderen Entwicklers.
Firmenwebsite geistinteractive.com gibt es ein Video mit
dem Titel „Modular FileMaker Application Development“,
das einen sehr interessanten Einblick in die Arbeitsweise von
Die Ideen hinter „FM Starter“
Todd Geist bietet. Er beschreibt darin, wie er selbst bei neuen n Gut integrierte Basismodule: dynamische Navigation,
Projekten zu neuen Modulen kommt und wie er diese schritt- Benutzerverwaltung, mehrsprachige Textlabels, Such-
weise entwickelt, zeigt aber keinen Lösungsansatz für kom- funktionen usw.
plette Projekte. Wer sich auf dieser Website umschaut, findet n Einfache Ordnerstruktur für Scripts, Layouts usw.
in dem Blog-Beitrag „What can WordPress teach FileMaker?“
n Einfache Fensterstruktur
ein Plädoyer für modulare Ansätze und einen Vergleich zwi-
schen FileMaker und WordPress in dieser Hinsicht. n Alle Angaben für Benutzer, Administratoren und Ent-
wickler (!) übersichtlich und in eigenen Fenstern direkt
Wie soll es also weitergehen? Zwei Stichwörter hatte ich be- zugänglich
reits gefunden: Portabilität und Entflechtung. Die Portabili- n Alle Einstellungen über reguläre Layouts anpassbar
tät, die zuerst einmal die FileMaker Module betrifft, soll da- n Grafikbibliothek
bei helfen, besser und vielseitiger zusammenzuarbeiten. Die
n Ansprechende Themen
Entflechtung dagegen ist etwas, was bei den Modulen sichtbar
wird, sich aber auch für die gesamte Entwicklung überneh- n Toolbox-Fenster für schnellen Zugriff auf Textlabels
men lässt. Hierbei geht es vor allem um die Entflechtung von und Grafiken
Abhängigkeiten zugunsten einer besseren Übersichtlichkeit, n Alles in Scripts und Layouts gut dokumentiert
z. B. bei Aufgabenbereichen innerhalb einer Applikation, von n Einstellungen für die Software (Name, Version, Lizenz,
Scripts und Layouts, Tabellen und Funktionen. Über … usw.)
n Deutsches Online-Handbuch (englisches Handbuch
Diese Gedanken haben mich zu einem Lösungsansatz ge-
in Vorbereitung)
führt, den ich auf der diesjährigen FileMaker Konferenz in
Winterthur vorgestellt habe – zunächst im Rahmen eines
Vortrages zu FileMaker Modulen, dann aber auch als Pro- Das zentrale Element der Lösung stellt die Navigation dar.
dukt, das ich auf der Konferenz lanciert habe und das bereits Sie ist dynamisch, mehrsprachig, mit der Benutzerverwal-
in den ersten Wochen von etwa einem Dutzend FileMaker tung verknüpft und kann Parameter für die Zielseite mitge-
Entwicklern übernommen wurde. Zudem fanden bereits ver- ben. Außerdem können mehrere Fenster aus derselben Navi­
schiedene Workshops und Schulungen statt. gationstabelle gespeist werden, sodass jedes Fenster seine
eigene Navigationsstruktur hat. Die Navigation bietet also auf
Anhieb eine effiziente Strukturierungsmöglichkeit. Layouts
Das Produkt: „FM Starter“ und Scripts können Modulen, Fenstern oder Seiten zugeord-
Das Produkt heißt FM Starter und ist eine Starterdatei, die net werden. Alle diese Varianten stehen bei den Layouts und
die bisherigen Gedanken zusammenfasst. Es ist keine Vorgabe Scripts in einer ebenso organisierten Ordnerstruktur.
oder Konvention, sondern vor allem eine offene Struktur. Je-
der kann programmieren wie er will und gleichzeitig auf An- Eine weitere Strukturierungshilfe betrifft die Fenster, wo es
hieb die Struktur und die vorhandenen Module nutzen. Die aufgabenspezifische Unterteilungen gibt. Das Standardpro-
Struktur lehnt stark an die Ideen eines modularen FileMaker gramm läuft in einem einzigen Hauptfenster, das für den re-

FMM_201501  11
Nachdruck aus dem
Datenmodellierung FileMaker Magazin
siehe auch: www.filemaker-magazin.de

gulären Benutzer gedacht ist. Bei den meisten Applikationen Verdichtung  Scripts werden multifunktional aufgesetzt, das
gibt es jedoch auch administrative Aufgaben, wie beispiels- heißt, ein einzelnes Script kann mehrere Aufgaben erfüllen.
weise die Verwaltung von Benutzer-Accounts oder bestimm- Damit das möglich ist, stehen alle Script-Anweisungen grund-
te Software-Einstellungen. Diese Funktionen werden nicht sätzlich in „Wenn“-Abfragen. Der Aufruf des Scripts erfolgt
so häufig gebraucht und sollten nur den Administratoren mit einem Scriptparameter, der von den „Wenn“-Abfragen
zugänglich sein. Was ist einfacher, als sie in ein eigenes Auf­ mit „Hole (ScriptParameter)“ evaluiert wird. So kann ein ein-
gabenfenster zu verlegen? Das war die Geburt des Adminis- ziges Layout-Script problemlos zehn verschiedene Aufgaben
tratorfensters. Auch hier greift das Navigationsmodul und erfüllen. Eine Deklaration der Scriptparameter zu Anfang
bietet eine eigene Struktur, wodurch beliebig viele Einstel- des Scripts erhöht die Übersichtlichkeit; wird kein Parameter
lungslayouts schnell und übersichtlich eingebunden werden übergeben, macht das Script nichts. Diese Vorgehensweise ist
können. ebenfalls nur eine Idee für eine Struktur und keine Program-
mierrichtlinie. Die Anzahl der Scripts nimmt drastisch ab
Neben dem Administrator hat auch der Entwickler ein eige- und es ist auf Anhieb klar, wo ein Script zugeordnet ist (z. B.
nes Fenster. Das erhöht nicht nur den Komfort, sondern er- Modul-Script, Layout-Script). Das vereinfacht die Programm-
mutigt ihn auch dazu, eigene Erweiterungen und Hinweise in pflege erheblich.
derselben Struktur abzulegen: Module, Einstellungen, Tipps
& Tricks und vieles mehr. Die Fensterstruktur ist keine Pro- FM Starter kann nicht alles und muss auch nicht alles kön-
grammierrichtlinie, sondern eine schlichte Strukturierungs- nen. Das Programm ist offen für Erweiterungen und will dem
hilfe, die man nutzen oder abändern kann. Sie entspricht Entwickler einen einfacheren Start bieten. Weitere Module
einer Struktur, die ohnehin von den meisten Entwicklern lassen sich nicht nur bequem einbinden, sondern auch pro-
benutzt wird. blemlos in die vorhandene Struktur einordnen. Die weitge-
hende Entflechtung hilft dabei, aus FM Starter auf einfache
Die Entflechtung der Programmierarbeit lässt sich auch im Weise eine eigene Starterlösung zu kreieren.
Script-Bereich realisieren. Hierfür wurden in FM Starter
zwei Ansätze verfolgt: Wer es besser kann oder anders machen würde, ist eingeladen,
einen entsprechenden Beitrag zu verfassen. Gewiss entstehen
Lokal Sofern Scripts nicht zu Modulen oder bestimmten gerade dadurch die besten Ideen für eine zukunftssichere und
Aufgaben gehören, lassen sie sich häufig auf einzelne Lay- modulare FileMaker Entwicklung. Auf Basis von FM Starter
outs begrenzen. In FM Starter werden viele Layout-Scripts gibt es bereits einen regen Austausch und neue Ideen finden
genutzt, die nur Funktionen für die jeweiligen Layouts verar- den Weg in den Alltag. Das ist meines Erachtens die beste Vo-
beiten. Werden Funktionen aus anderen Scripts oder von an- raussetzung für weitere Entwicklungen. ♦
deren Tabellen benötigt, wird auf die entsprechenden Layouts
und Layout-Scripts verwiesen. Der Vorteil dieser Arbeitswei- Literaturangaben, Websites
se ist die Entflechtung von Scripts, die sonst in viele Layouts modularfilemaker.org – FileMaker Module, Konzepte
oder Tabellen hineinwirken. Außerdem werden Doppelspu- kursiv-software.com – FM Starter, FileMaker Module
rigkeiten vermieden und es wird eine generische Arbeitsweise kursiv.ch – Workshops
gefördert. Wenn beispielsweise eine neue Adresse angelegt fmstarter.com – demnächst: die zentrale Seite zu FM Starter mit
werden soll, dann nur im Layout-Script für das Layout „Ad- Support, Knowledge Base usw.
ressen“.

Die zentrale Navigation in FM Starter baut auf einer Tabelle auf, deren Parameter in jedem Layout dynamisch abgerufen werden.

12 FMM_201501
2008 01

Das unabhängige Magazin für FileMaker Anwender und Entwickler FMM_200801


Deutschland e 9,50 | www.filemaker-magazin.de

Geschüttelt, nicht gerührt …

Das FileMaker Magazin


Gut zu wissen

Ist Maintenance ● Einzige, deutschsprachige Fachzeitschrift zu FileMaker


eigentlich ansteckend?
FileMaker für Einsteiger ● Wissen aus erster Hand von anerkannten FileMaker Fachautoren
Wie Sie in FileMaker Ihre
ersten „Felder bestellen“ ● Große Themenvielfalt für Anwender, Entwickler und
Fortgeschrittene
Buchbesprechungen

Neue Fachbücher
zu FileMaker 9
© 1994 - 2008 K&K Verlag GmbH, Hamburg

Exklusiv für Premium-Abonnenten


FMM_2008_01.Titel.indd 1 29.04.2008 10:09:42 Uhr

● Sechs FMM Ausgaben pro Jahr


● Kostenlose Nutzung des Abonnentenbereichs auf
www.filemaker-magazin.de
● PDF-Online-Archiv mit allen bisher erschienenen Ausgaben
● Jede Ausgabe mit kostenlosen Beispieldateien und Zusatzinfos
zum Download

Unser Service
● Aktuelle Neuheiten, Tipps und Infos, Kleinanzeigen und
vieles mehr jederzeit online auf unseren Webseiten
● Hilfe bei allen Fragen zu FileMaker im FMM Forum
● Kompetente Beratung zum Kauf von FileMaker Lizenzen:
Einfach anrufen +49 (0)40 589 65 79 70.

Hier finden Sie Aktuelles zu FileMaker


Produkten, egal ob Sie kaufen, mieten
oder sich einfach informieren möchten.

Wenn Sie sich für ein


Eine kostenlose Leseprobe des FileMaker Magazin Abo
FileMaker Magazins erhalten Sie, interessieren, klicken Sie
wenn Sie hier klicken. bitte hier!

K&K Verlag GmbH · www.filemaker-magazin.de · Telefon +49 40 589657970