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.