Tipps & Tricks - Mehrsprachige Datensätze
Wenn Sie in einem Portal Datensätze in mehreren Sprachen anzeigen möchten, z.B. deutsch
und englisch, benötigen Sie zum einen die Übersetzung des Datensatzes pro Sprache, zum
anderen die zweistelligen Sprachkürzel nach ISO 3166-1, hier z.B.
de für deutsch und
en für englisch. Die im Folgenden
beschriebene Vorgehensweise können Sie natürlich auf eine nicht begrenzte Anzahl von
Sprachen anwenden.
Applikation anlegen
Erstellen Sie eine neue Applikation mit der Applikationsvorlage
Basisapplikation.
Legen Sie über das
Kontextmenü der Datengruppe
ein neues Datenfeld an und geben Sie ihm den Titel
Sprachcode mit
Datentyp
Kurzer Text. Klicken Sie
OK.
Legen Sie auf der Eingabeseite eine
Auswahlliste
an und geben Sie ihr den Titel
Sprache. Klicken Sie
Weiter.
Wählen Sie hier die Option
Spezielle Wertequellen
und die Klasse
LanguageListProzessor. Klicken Sie
Weiter.
Wählen Sie hier das Datenfeld
Sprachcode aus, um die Auswahlliste
damit zu verbinden, und klicken Sie
Weiter und anschließend
Fertigstellen.
Wechseln Sie auf die Seite
Alle Einträge, öffnen Sie den
Eigenschaftendialog der Ansichtstabelle und
nehmen Sie das Datenfeld
Sprachcode als
Tabellenspalte auf.
Klicken Sie
OK und
Veröffentlichen
Sie die Applikation. Wechseln Sie dann in den Browser.
Legen Sie hier auf der Eingabeseite einen deutschen und einen englischen Datensatz an.
Wie Sie sehen, zeigt die Ansichtstabelle auf der Seite
Alle Einträge
nun beide Datensätze mit dem Sprachcode an. Die Klasse
LanguageListProzessor
hat also die Funktion, in der Auswahlliste die Sprachnamen anzuzeigen. Damit ist die Auswahl
einer Sprache weitaus komfortabler als die Auswahl von Sprachcodes, die leicht verwechselt werden
können. Im Datenfeld legt die Klasse
LanguageListProzessor
den entsprechenden Sprachcode ab. Nur mit dem gespeicherten Sprachcode ist später die sprachabhängige
Anzeige der Datensätze gewährleistet. Um die Datensätze sprachabhängig zu filtern,
öffnen Sie bitte erneut den
Eigenschaftendialog
der Ansichtstabelle.
Legen Sie hier den
Filter an, indem Sie das Datenfeld
Sprachcode mit dem Systemwert
Sprache
vergleichen.
Veröffentlichen
Sie die Applikation.
Laden Sie die Applikation im Browser neu (Taste F5). Wenn ihr Portal die
deutsche Spracheinstellung hat, wird nun nur noch der deutsche Datensatz
in der Tabelle angezeigt. Schalten Sie das Portal auf Englisch um.
Die Tabelle zeigt nun nur den englischen Datensatz an.
Neben der Klasse
LanguageListProzessor, die hier die Einträge
der Auswahlliste für die Sprache liefert, gibt es noch viele weitere Klassen, die z.B. nur die
Sprachen auflisten, die Sie in den
Ländereinstellungen der Portaleigenschaften haben.
Informationen dazu finden Sie
hier.
Das Element
Dynamische Ansicht kann für die
Anzeige von bereits gespeicherten Sprachcodes ebenso eingestellt werden wie die Auswahlliste und liefert dann
statt der Codes die ausgeschriebene Sprache.