Mehrdateien-Lösungen in FileMaker

Alles in einer Datei oder besser mehrere Dateien nutzen?


17. August 2023In Allgemein, FM Starter, FrankCRMBy Karsten Risseeuw7 Minutes

Was bevorzugen Sie bei der FileMaker-Entwicklung? Möchten Sie alles in einer Datei realisieren oder entwickeln Sie eine Mehrdateien-Lösung? Beide Entwicklungsansätze haben ihre Vorteile und Nachteile. In diesem Beitrag werden die Stärken und Schwächen etwas ausgelotet. Mit FileMaker lassen sich beide Konzepte umsetzen.

FileMaker Vorgeschichte

Die ersten Versionen von FileMaker konnten nur mit einer Tabelle in einer Datei arbeiten. Etwas später konnte man mehrere solcher Dateien verknüpfen und kam zu Mehr-Dateien-Lösungen. In jeder Datei gab es nach wie vor eine einzige Tabelle, aber sie konnten verknüpft werden. Lösungen aus dieser Zeit (Anfang 90er-Jahren) hatten oft besonders viele Dateien, entsprechend der Anzahl Tabellen, die man benötigte.

Ab FileMaker Pro 7 konnte man mehrere Tabellen in einer Datei zusammenfassen. Relationale Datenbanken aufzubauen, gelang deutlich einfacher. Bei der Version 12 wurde ein neues Datenformat eingeführt und die möglichen Grössen der Tabellen und Dateien wurde deutlich angehoben. Plötzlich war FileMaker auch für grosse Datenmengen geeignet. Aus dieser Zeit stammen FileMaker-Lösungen, die wieder zur einen Datei zurückkehrten, weil jetzt auch komplexe Anwendungen innerhalb einer Datei abgebildet werden konnten.

Heute kann man Lösungen sowohl mit einer Datei als auch mit mehreren Dateien erstellen. Ausserdem lassen sich externe Datenquellen recht einfach einbinden. Aus allen diesen Möglichkeiten können FileMaker-Lösungen heute ganz verschieden aussehen:

  1. Eine-Datei-Lösung
  2. Mehr-Dateien-Lösung
  3. FileMaker als Benutzeroberfläche mit externen Datenquellen
  4. Jede Mischform.

FileMaker Eigenheiten

Eine Trennung etwa von Bedienungsoberfläche und Datenstruktur ist in vielen Entwicklungsumgebungen wie selbstverständlich. In FileMaker ist das nicht der Fall. Jedes Layout etwa muss zwingend eine Tabelle zugeordnet haben. Eine strikte Trennung von Datenbank und Benutzeroberfläche ist deshalb nicht möglich.

Allerdings lassen sich Ansätze zur Trennung sehr wohl umsetzen. Man kann etwa für manche Aufgaben eine neutrale Tabelle benutzen. Wer es etwas fortgeschrittener mag, kann alle Datensätze auf dem Layout einer Session-Tabelle abbilden, während die weiteren Daten sozusagen im Hintergrund bleiben.

FileMaker lässt sich auch als Frontend für externe Systeme nutzen. Es gibt verschiedene Möglichkeiten, externe Datenbanken einzubinden. Die Entwicklung einer Benutzeroberfläche ist in FileMaker besonders schnell und einfach. Externe Tabellen werden über das Beziehungsdiagramm eingeblendet und können anschliessend so einfach wie interne Tabellen genutzt werden.

Die Möglichkeiten zu einer Trennung von Daten sind auf verschiedene Art gegeben. Mit welchen Vorteilen oder Nachteilen lassen sich nun verschiedene Modelle benutzen?

Eine Datei

Vorteile

  • Einfaches Dateihandling
  • Alles-in-Einem
  • Einfacher Einsatz auf mobile Geräte

Nachteile

  • Für grosse Datenmengen möglich ungeeignet
  • Als Dokumentenverwaltung möglich ungeeignet
  • Updates sind aufwändig

Mehrere Dateien

Vorteile

  • Auf Wunsch Trennung von Benutzeroberfläche und Daten
  • Grosse Datenmengen können in eigenen Dateien verwaltet werden
  • Grosse Dateien können nur bei Bedarf angesprochen werden.

Nachteile

  • Datenpflege und Backups sind umfangreicher
  • Zugriffsrechte müssen über verschiedene Dateien hinweg geregelt werden
  • Planung ist aufwändiger.

Anwendungsbeispiele

Man kann davon ausgehen, dass eine Lösung mit nur einer Datei ein moderner Standard für die FileMaker-Entwicklung ist. Es ist kein Problem, auch grössere Datenmengen in einer einzigen Datei zu verwalten. Das ist der Ausgangspunkt.

Für eine Mehrdateien-Lösung gibt es vor allem diese zwei Gründe:

  1. Trennung von Benutzeroberfläche und Daten
  2. Auslagerung besonders grosser Datenmengen.

Trennung von Benutzeroberfläche und Daten

Man kann eine Datei als «Benutzeroberfläche» bestimmen und alle Kundendaten in anderen Dateien auslagern. Unabhängig von der Datenmenge kann eine solche Lösung bestimmte Vorteile bieten. Wer etwa in der Datei der Benutzeroberfläche alle Logik und Funktionen unterbringt, kann Updates und Upgrades besonders einfach realisieren: Man wechselt nur die Datei der Benutzeroberfläche aus, während die Kundendaten unberührt bleiben.

Viele FileMaker-Entwickler entwickeln «am offenen Herzen», wenn sie direkt auf dem Kundenserver in Dateien eingreifen, die live genutzt werden. FileMaker erlaubt das, aber wäre es nicht viel sicherer, auf einer Kopie der Daten zu arbeiten? Die Alternative wäre es hier, wenn man eine Datei als Benutzeroberfläche bestimmt und mit einer Kopie dieser Datei neue Funktionen und Bugfixes entwickelt. Ist alles getestet, muss nur die Datei der Benutzeroberfläche ausgewechselt werden.

Bei dieser letzten Variante ist es unerheblich, ob die Kopie der Datei auf dem Server oder lokal mit einer Kopie entwickelt wird. Bearbeitet man die Daten offline, empfiehlt es sich, auch die Daten selbst (die übrigen Dateien) als Kopie und eventuell nur mit Musterdaten, offline zu nutzen. Man baut sozusagen ein Schattensystem für den Entwickler auf. Wenn alle Anpassungen erledigt sind, kann die Datei mit der Benutzeroberfläche sehr schnell ausgewechselt werden.

Auslagerung besonders grosser Datenmengen

Ein weiterer Grund, auf mehrere Dateien zu setzen, liegt in der Datenmenge. Dabei kann man an verschiedene Szenarien denken:

  • Eine Dokumentenablage profitiert von externen Dateien, welche die Dokumente aufnehmen. Man denke dabei an Bildern, PDF-Dateien und andere Dateiformate, die über FileMaker verwaltet werden.
  • Bestimmte Daten in eigenständigen Dateien verwalten. Dies kann die Übersichtlichkeit für den Entwickler vergrössern.
  • Externe Dateien für die Datenablage gestatten etwa auch Dateien pro Jahr, pro Kunde oder pro Mandanten anzulegen.

FM Starter und FrankCRM

Die beiden Produkte «FM Starter» und «FrankCRM» werden als Eine-Datei-Lösung angeboten. Bewusst wurde für den einfachsten Aufbau gewählt. Das muss natürlich nicht so bleiben. Dem Entwickler steht es frei, aus diesen Dateien eine Mehrdateien-Lösung zu erstellen, wenn das dem Projekt dient. Mögliche Gründe dafür wurden hier oben aufgeführt.