Mehrsprachige Textetiketten in FileMaker

Ein Beispiel dafür, wie man mehrsprachige Textetiketten in FileMaker verwalten und darstellen kann


18. August 2023In BeispieleBy Karsten Risseeuw4 Minutes

Eine mehrsprachige FileMaker-Lösung erstellen

Möchte man eine mehrsprachige FileMaker-Lösung erstellen, benötigt es verschiedene Komponenten.

  1. Die erste und wichtigste Komponente ist die Frage, wie man Textetiketten erstellt. Dabei geht es um die Datenstruktur, worüber man Etiketten anlegt, und eine Methode, diese Etiketten in der Applikation darzustellen. Wie man das machen kann, wird in dieser Beispieldatei gezeigt, die man hier unten herunterladen kann.
  2. Eine Übersetzung kann der nächste Schritt sein. Dabei gibt es erneut zwei Optionen: Man kann manuell oder automatisch übersetzen. Für eine automatische Übersetzung kann man das kostenlose Add-on «TWD – Translate with DeepL» von dieser Website anfordern.

Anforderungen für mehrsprachige Textetiketten

Bei der Entwicklung einer mehrsprachigen Benutzeroberfläche soll es so einfach wie möglich gehalten werden. Folgende Anforderungen sollten erfüllt werden:

  1. Verwalten mehrsprachiger Texte an einem zentralen Ort
  2. Sprache jederzeit wechseln können
  3. Es sollten keine Beziehungen nötig sein (globale Anwendung)

Wie es funktioniert

Die Textbeschriftungen werden in einer Tabelle verwaltet. In dieser Tabelle gibt es ein Textfeld für die Textetiketten. Dieses Textfeld hat mehrere Wiederholungen. Jede Wiederholung steht für eine Sprache. Nehmen wir an, Sie möchten 5 Sprachen anlegen, dann benötigen Sie 5 Wiederholungen dieses einen Textfeldes. Sie können dies als 5 Spalten erkennen, wenn Sie möchten. Jede Spalte steht für eine Wiederholung und eine Sprache.

Das sieht in etwa so aus:

Diese Tabelle hat ein zusätzliches Feld mit einer laufenden Nummer, die nicht die ID ist. Diese Nummer wird verwendet, um die Textbeschriftung zu identifizieren.

Die Tabelle mit den Bezeichnungen wird dann in die Wiederholungen eines globalen Wiederholungsfeldes geladen. Die laufende Nummer wird verwendet, um die Wiederholungsnummer zu definieren, in der jedes Etikett gespeichert wird. Auf diese Weise ist die Konsistenz gewährleistet, auch wenn Beschriftungen gelöscht oder Nummern übersprungen werden.

Das sieht etwa so aus:

Sprachen wechseln

Textetiketten, die aus einer separaten Tabelle stammen, müssen in das globale Wiederholfeld geladen werden, bevor man sie sehen kann. In der Beispieldatei wird gezeigt, wie die Werte aus der Tabelle geladen werden. Damit man die Sprache wählen kann, muss man nur die Spalte (bzw. die Wiederholung) der gesuchten Sprache wählen. Diese Spalte wird dann geladen. Bei einem Sprachwechsel wird dieser Prozess wiederholt, jedoch mit den Werten einer anderen Spalte.

Das Laden von Textetiketten geschieht blitzartig. Es gibt kaum Verzögerungen, auch nicht mit weit über 1000 Textetiketten.

Texte im Layout darstellen

Hat man die Sprache in das globale Wiederholfeld geladen, muss man nur noch auf die gewünschte Wiederholung verweisen. In Ihrem Layout können Sie sich auf jede Wiederholung aus diesem globalen Textfeld beziehen. Da es sich auf ein globales Textfeld bezieht, sind keine Beziehungen erforderlich. Ihre Textbeschriftungen können nun in Ihrer gesamten Anwendung verwendet werden.

Eine Darstellung auf dem Layout kann mit <<L::gText[ 127]>> oder ähnlich erreicht werden. Dabei ist «L» die Tabelle, «gText» ist das globale Wiederholfeld und «[ 127]» ist die Wiederholnummer, worin sich das gewünschte Textlabel befindet.

Damit man Textetiketten leicht finden und anwenden kann, empfiehlt es sich, ein Fenster zu machen, worin nach Texten gesucht und die entsprechende Nummer leicht gefunden werden kann. Eine bequeme Lösung ist etwa in unserem Produkt «FM Starter» eingebunden. Ideen, wie man das machen kann, findet man etwa in den Videos zu FM Starter gezeigt.

Möchte man diese Entwicklung nicht selbst machen, empfiehlt es sich, FM Starter zu evaluieren. Es ist eine kostengünstige Lösung, mit neuen Projekten gleich durchzustarten.

Multilingual text labels
Multilingual text labels

Eine Methode, wie man in FileMaker mehrsprachige Textetiketten verwalten und darstellen kann.

A method to manage and display multilingual text labels in FileMaker.