Eine Spalte durch eine oder mehrere Multilang-Spalten ergänzen

Zu einer Spalte einer Tabelle können eine oder mehrere zusätzliche Spalten, sogenannte Multilang-Spalten mittels des folgenden Menüs definiert werden. Diese Ergänzung ist nützlich, wenn die Daten einer Tabellenzeile teilweise global einheitlich, teilweise in verschiedenen Sprachen ausgegeben werden sollen. Nutzer mögen gewisse Daten (Datumsangaben, Raumnummer, Wert eines Ja/Nein-Feldes) einheitlich, Veranstaltungstitel jedoch in ihrer Sprache erhalten (deutsch, englisch, französisch). Die Spalte 'Veranstaltungstitel' soll folglich genau einen von mehreren Werten ausliefern, die Entscheidung hierüber muß sich aus der Browsereinstellung des Lesers ergeben. Dies läßt sich einfach realisieren, indem zur Spalte 'Veranstaltungstitel' eine oder mehrere Multilang-Spalten mit gewünschten Sprachkürzeln definiert werden. Näheres zu den verfügbaren neutralen und spezifischen Kulturen ist unter Kultur-spezifische Ausgaben zu finden.

Zu beachten ist, daß Multilang-Spalten unabhängig von kulturell verschiedenartigen Ausgabeformaten für Datum/Zeit und numerische Daten sind. Bei Multilang-Spalten handelt es sich um ein innerhalb des Datenmanagement-Systems verankertes Prinzip, das zu bereits vorhandenen Tabellen zusätzliche Zwei-Spalten-Tabellen erzeugt und deren Werte bei der Auslieferung oder Speicherung von Zeilen berücksichtigt. Die kulturspezifische Formatierung von Daten kann vollständig vom Webserver her erledigt werden und benötigt keine zusätzlichen Einträge in der Datenbank. Ferner kann die Formatierung von Datum/Uhrzeit und numerischen Daten auf verschiedenen Ausgabeseiten unterschiedlich sein. Die Auslieferung von Multilang-Spalten ist dagegen immer einheitlich abhängig vom Clientbrowser.

Das Menü 2 nimmt insofern eine Sonderstellung ein, da es sowohl zum Definieren von Objekten, nämlich Multilang-Spalten, als auch zur Dateneingabe für einzelne Multilang-Spalten genutzt werden kann. Die Dateneingabe ist hier in Blöcken von zehn Zeilen möglich, zu welchen der Hauptwert und ein Feld für die aktuelle Multilang-Spalte angezeigt wird.

Eine Multilang-Spalte wird über das folgende Menü definiert. Es sind nur zwei Felder zu definieren. Beide - Spalte und Ländercode - sind Pflichtfelder:

SuchenNeue ML-SpalteSpeichernAbbruch



Hilfe
Übersicht  (1/14)
 < 1 2 > 
 +    Artikel.A_Name
 +    Artikel.A_Name
 +    Artikel.A_Name
 +    Artikel.A_Name
 +    Einschränkungen.Fehlermeldung
 +    Spalten.RegEx-Fehlermeldung
 +    Spalten.RegEx-Fehlermeldung
 +    Spalten.RegEx-Fehlermeldung
 +    Spalten.RegEx-Fehlermeldung
 +    Spalten.Spaltenalias
Id
Spaltenname *
Ländercode *
Owner
Protokoll 

Löschen

<Spaltenname> listet alle derzeit verfügbaren Spalten auf. <Ländercode> zeigt die etwa 70 neutralen und die hierzu definierten spezifischen Kulturen an. Hier sind die Such- und Blättermöglichkeiten für die Verknüpfungen meist notwendig.

Wird im obigen Menü eine neue Multilang-Spalte erstellt, so wird im Hintergrund eine zusätzliche, schmale Tabelle mit geeigneten Verknüpfungen erstellt. Ferner ist eine Aktualisierung aller für diese Tabelle definierten Standardprozeduren notwendig. Dasselbe gilt für Tabellen, die Relationen auf diese Grundtabelle verwenden. Nach dem Abschluß dieser Erstellung wird die Multilang-Spalte sofort für die Dateneingabe und -bearbeitung über das Menü 1 genutzt, da alle Datenzugriffe über die Standardprozeduren laufen und diese nun aktualisiert vorliegen.

Das Menü 2 wird nicht nur zur Definition von Multilang-Spalten, sondern zusätzlich zur blockweisen Bearbeitung von Grund- und Multilang-Spalte genutzt. Ein Klick auf das '+' zu einer Zeile wechselt in den Suchmodus zu dieser Spalte:

Suchen  Abbruch



Hilfe
Übersicht  (1/1)  
 < 1 > 
 -    Artikel.A_Name
Id
A_Name
en-US

Hier kann ohne Vorauswahl nach den ersten 10 mit anschließendem Blättern, über die Id ein einzelner Datensatz oder, falls es sich bei der Spalte um eine Textspalte handelt, über die übliche Textsuche unscharf gesucht werden. Das Ergebnis wird wie gewohnt aufgelistet. Beim Klick auf einen beliebigen der angezeigten Datensätze wird zur blockweisen Bearbeitung gewechselt. Eine Maske wie folgt steht zur Verfügung:

Suchen SpeichernAbbruch



Hilfe
Übersicht  (1/4)  
 < 1 > 
 -    Artikel.A_Name
   - Hose
   - Mantel
   - Oberhemd
   - Oberhemd
IdA_Nameen-USProtokoll
11
12
13
22

Links sind Id und Hauptwert zu finden, rechts folgen die Werte für diese Sprachverzweigung. Gibt es zu einer Spalte - hier A_Name - mehrere Multilang-Spalten, so ist der linke Teil dieser Maske immer derselbe. Die Maske erlaubt die gleichzeitige Bearbeitung aller 10 ausgegebenen Datensätze. Wird an der Grundspalte nichts geändert, so werden deren Werte nicht neu gespeichert. Damit wird auch die Berechtigung zum Speichern der Grunddaten nicht geprüft, so daß eine fehlende Berechtigung hier keinen Abbruch erzeugt. Ein Nutzer, der nur die Berechtigung zum Bearbeiten dieser Kombination (hier: A_Name + en-US) hat, kann also diese Maske aufrufen und rechts die englischen Einträge bearbeiten, ohne daß er die Haupteinträge verändern darf. Bei vorhandener Berechtigung sind sowohl Daten der Grund- als auch der Multilang-Spalte editierbar.

Multilang-Spalten für Systemspalten

Zusätzlich zu sämtlichen benutzerdefinierten Spalten können Multilang-Spalten für vier Systemspalten definiert werden: Für den Tabellen- und Spaltenalias und für die beiden Fehlermeldungen bei RegEx- und Constraintsverletzungen werden im ersten Menü die Spalten eingeblendet. Der Tabellenalias wird derzeit nicht verwendet. Ein Spaltenalias wird sowohl im Menü 1 als auch auf Ausgabeseiten zur Beschriftung einer Spalte herangezogen. Mit den beiden Spalten für RegEx- und Constraintsverletzungen können verständliche Fehlermeldungen in verschiedenen Sprachen ausgegeben werden. In solchen Fällen ist es notwendig, daß die Grundeinträge definiert sind, bevor zu diesen Spalten Multilang-Spalten sinnvoll sind.

Sicherheit

Zusätzlich zu den bereits genannten Punkten gilt, daß zwar einerseits die Berechtigungen zwischen dem Zugriff über das Menü 1 und über das Menü 2 voneinander entkoppelt sind: Man kann einen Nutzer erstellen, der nicht auf die Tabelle 'Artikel' im Menü 1 zugreifen kann, die zugeordneten Multilang-Spalten jedoch bearbeiten darf. Andererseits sieht dieser Nutzer immer die Hauptdaten von jenen Spalten, für welche er Leseberechtigung besitzt. Die Entkoppelung der beiden Leserechte scheint nur in jenen Fällen sinnvoll, in welchen bsp. Spalten mit Gehaltsdaten oder ähnlichem in der Grundtabelle enthalten wären. Brauchbar ist dagegen die Entkoppelung der Schreibrechte. Sie ermöglicht es, bsp. muttersprachliche Personen gezielt das Recht zuzuweisen, Spalten zu übersetzen, ohne daß sie die Grunddaten bearbeiten können.

Zur Erstellung einer neuen Multilang-Spalte mit dem Hauptmenü ist die Add-Berechtigung für den Objekttyp 'mehrsprachliche Tabellen' notwendig. Anschließend wird die neue Spalte, welche intern als zusätzliche Tabelle realisiert ist, für den Objekttyp 'mehrsprachliche Zeilen' unter den Objektnamen aufgeführt, so daß eine einzelne Lese- oder Editierberechtigung für diese Spalte zugeteilt werden kann. Die Execute-Berechtigung wird ignoriert.


Kontaktformular:

Schreiben Sie mir und wir bauen gemeinsam Ihre neue Web-Datenbank!

Die Erläuterungen zum Datenschutz habe ich gelesen und stimme diesen zu.

© 2003-2018 Jürgen Auer, Berlin.