Sprachverwaltungseinträge

Prev Next

Der Menüeintrag Sprachverwaltungseintraege erscheint unter dem Menüknoten Sprachverwaltung, wenn die Rolle der Session über die Berechtigung "Verwaltung/Konfiguration/Sprachverwaltung/Anzeigen" verfügt.

Er öffnet eine kombinierte Ansicht für den Entitätstyp "Sprachverwaltungseintrag" (LocalizationEntry).

  • View-Name: de.lobster.scm.coresystem.localization.db::LocalizationEntry|listDetailsWindow

  • Menüknotenname: admin/localizationGroup/localization

Besonderheiten der View für "Sprachverwaltungseinträge"

Die View für Sprachverwaltungseinträge erscheint als kombinierte Ansicht mit einer Erfassungsmaske zum Editieren oberhalb von einem Listenbereich, in dem der zu editierende Eintrag ausgewählt werden muss.

Auf den ersten Blick entspricht dies dem klassischen Aufbau einer generischen View für einen beliebigen Entitätstyp. Allerdings sind für Sprachverwaltungseinträge einige Besonderheiten zu beachten:

  • Der Listenbereich zeigt nicht nur Zeilen für Sprachverwaltungseinträge an, für die Entitäten des Typs "Sprachverwaltungseintrag" (LocalizationEntry) angelegt und in der Datenbank gespeichert wurden.

  • Vielmehr erscheinen auch Zeilen als Sprachverwaltungseinträge, die direkt auf vom System bereitgestellte "Ressourcen" zurückgehen. Nur wenn diese "ab Werk" bereitgestellten Lokalisierungen angepasst werden sollen, wird eine "Sprachverwaltungseintrag"-Entität erstellt.

Über die Spalte "Status" (LocalizationStatus) im Listenbereich können diese beiden Typen von Einträgen unterschieden werden:

  • Für LocalizationEntry-Entitäten, die angepasste bzw. ergänzte Sprachverwaltungseinträge repräsentieren, lautet der Status: "Datenbank" (DATABASE).

  • Für "System-Lokalisierungen", die in der Liste erscheinen, aber nicht in der Datenbank "bekannt" sind, lautet der Status: "System" (SYSTEM).

  • Der Status "Geändert" (CHANGED) kennzeichnet hinzugefügte oder bearbeitete Listeneinträge mit ungespeicherten Änderungen.

 WICHTIG  Im Unterschied zu konventionellen Übersichten lässt die View für Sprachverwaltungseinträge das Bearbeiten mehrerer Einträge zu, bevor deren volatile Daten insgesamt gespeichert werden (s. unten, "Besonderheiten im Ribbon").

Den Zugriff auf Entitäten für Sprachverwaltungseinträge regeln die Berechtigungen für den Knoten "Verwaltung/Konfiguration/Sprachverwaltung" (administration/designer/localization).


/var Zugriffsregeln für Entitäten

  • Obwohl für jede Entität des Typs "Sprachverwaltungseintrag" (LocalizationEntry ) formal ein "Besitzer" (ownerId ) ausgewiesen wird, greifen effektiv keine Besitzereinschränkungen für diese Entitätstyp.

  • Für den Lesezugriff auf LocalizationEntry-Entitäten per Such API muss die Berechtigung "Lesen" oder "Anzeigen" für den Knoten "Verwaltung/Konfiguration/Sprachverwaltung" (administration/designer/localization) vorliegen.

  • Das Nachschlagen von Lokalisierungen in der Sprachverwaltung durch Systemfunktionen (z. B. Wert aus Sprachverwaltung, Zugriff auf Sprachverwaltungsresourcen (Berechnungsausdruck)) ist nicht an Berechtigungen gebunden.

 HINWEIS  Für Firmenspezifische Sprachanpassungen und die darin definierten "Überladungen" für Sprachverwaltungseinträge sind Besitzereinschränkungen und damit ggf. auch Firmenfreigaben ausdrücklich relevant.


Der folgende Screenshot zeigt die kombinierte Ansicht mit dem Standard-Ribbon , darunter die Standard-Erfassungsmaske mit den Details des im Listenbereich (ganz unten) ausgewählten Sprachverwaltungseintrags.

 ANMERKUNG  Der Filter für die Spalte Resource Bundle (ressourceBundle) ist im Screenshot so gesetzt, dass die Liste alle Lokalisierungen für die Klasse LocalizationStatus anzeigt. Bei dieser Klasse handelt es sich um eine Statische Aufzählung, die die Optionen für die Status-Spalte dieser Liste definiert.

images/download/attachments/201683424/image-2025-6-6_8-43-7-version-1-modificationdate-1749192186448-api-v2.png

Besonderheiten im Ribbon

Die Ribbon Buttons in der Unterkategorie Details unterscheiden sich wesentlich vom Standard für generische Übersichten.

Unterkategorie

Ribbon Button

Beschreibung

Details

images/download/attachments/201683424/image-2025-6-6_9-11-22-version-1-modificationdate-1749193882175-api-v2.png

Der Ribbon Button Hinzufügen erzeugt einen neue "Sprachverwaltungseintrag" (LocalizationEntry)-Entität im Detailbereich. Auf diesem Weg können der Sprachverwaltung neue Einträge hinzugefügt werden.
 HINWEIS  Falls die Erfassungsmaske Daten enthält, die noch nicht übernommen wurden (s. Übernehmen) erfolgt eine "Änderungen verwerfen?"-Rückfrage.


 WICHTIG  Falls die Eingaben für Resource Bundle (resourceBundle) und Resource Name (name) eines hinzugefügten Eintrags mit einem existierenden Eintrag übereinstimmen, wird dieser beim Speichern ohne jeglichen Hinweis überschrieben.

images/download/attachments/201683424/image-2025-6-6_9-23-55-version-1-modificationdate-1749194634397-api-v2.png

Der Ribbon Button Entfernen erscheint aktiv, wenn eine einen neue "Sprachverwaltungseintrag" (LocalizationEntry)-Entität im Detailbereich angezeigt wird.
Beim Klick auf Entfernen erfolgt eine Rückfrage zur "Löschbestätigung". Nur per Bestätigung wird der Eintrag aus der Liste entfernt. Wirklich gelöscht wird der Eintrag aber erst beim Speichern aller Änderungen in der Liste.

 WICHTIG 

  • Listeneinträge, mit dem Status "System" (SYSTEM) können auch durch Entfernen und Speichern nicht dauerhaft gelöscht werden. Sie verschwinden zwar temporär aus der Liste, escheinen aber nach den Speichern erneut.

  • Beim Entfernen eines Eintrag mit dem Status "Datenbank" (DATABASE), der sich per Resource Bundle (resourceBundle) und Resource Name (name) auf einen System-Eintrag bezieht, dessen Lokalisierungen er übersteuert, verschwindet dieser Eintrag ebenfalls temporär aus der Liste. Beim anschließenden Speichern der Änderungen wird die LokalizationEntry-Entität mit den angepassten Lokalisierungen tatsächlich aus der Datenbank gelöscht. Daraufhin erscheint der Eintrag wieder mit dem Status "System" (SYSTEM) und den zugehörigen Standard-Lokalisierungen.

 HINWEIS  Der Ribbon Button Suchen (in der Unterkategorie Liste) bewirkt in der Übersicht Sprachverwaltungseinträge keinen erneuten Abruf der Listeninhalte wie beim Öffnen der Liste.

images/download/attachments/201683424/image-2025-6-6_10-28-54-version-1-modificationdate-1749198533543-api-v2.png

Der Ribbon Button Abbrechen dient zum Verwerfen von Änderungen an einer "Sprachverwaltungseintrag" (LocalizationEntry)-Entität, die aktuell im Detailbereich anzeigt wird.

Ein Klick auf Abbrechen bewirkt effektiv das Abwählen eines ausgewählten Listeneintrags. Liegen dabei Änderungen vor, die noch nicht per Übernehmen bestätigt wurden, erfolgt eine "Änderungen verwerfen?"-Rückfrage.

 HINWEIS  Wurden für den betreffenden Listeneintrag bereits Änderungen per Übernehmen bestätigt, bleiben diese beim Abbrechen bestehen. Sie werden allerdings trotzdem erst effektiv wirksam, wenn das Speichern für alle geänderten Einträge ausgelöst wird.

images/download/attachments/201683424/image-2025-6-6_10-45-33-version-1-modificationdate-1749199532816-api-v2.png

Der Ribbon Button Kopieren erstellt eine Kopie der "Sprachverwaltungseintrag" (LocalizationEntry)-Entität im Detailbereich und ersetzt diese in der aktuellen Auswahl.

Enthält das Original Änderungen, die noch nicht per Übernehmen bestätigt wurden, erfolgt eine "Änderungen verwerfen?"-Rückfrage.

 HINWEIS  In der Regel sollte nach dem Anlegen der Kopie mindestens eines der Schlüsselfelder, Resource Bundle (resourceBundle) oder Resource Name (name), geändert werden. Sonst überschrieb die Kopie beim Übernehmen bzw. Speichern den Originaleintrag.

images/download/attachments/201683424/image-2025-6-6_10-51-35-version-1-modificationdate-1749199894651-api-v2.png

Der Ribbon Button Übernehmen übernimmt den ggf. bearbeiteten Datenstand für eine "Sprachverwaltungseintrag" (LocalizationEntry)-Entität im Detailbereich in den volatilen Datenstand für die Liste als Ganzes.

Übernommene Änderungen werden erst beim Speichern wirksam.

Liste

images/download/attachments/201683424/image-2025-6-6_11-2-24-version-1-modificationdate-1749200544491-api-v2.png

Anders als in generischen Übersichten hat ein Klick auf den Ribbon Button Suchen für Sprachverwaltungseinträge keine Auswirkung auf den Listeninhalt, da dieser als ggf. volatiler Bearbeitungsstand geschützt werden soll.

 HINWEIS  Wenn beim Klick auf Suchen die Strg-Taste gehalten wird, wird wie üblich die Definition für eine Tupel-Suche in die Lobster Data Platform / Orchestration-Zwischenablage kopiert. Allerdings ist diese aufgrund der Abweichungen von der Struktur einer generischen Übersicht nicht im Abfragekonfigurator ausführbar.

Änderungen

images/download/attachments/201683424/image-2025-6-6_10-55-12-version-1-modificationdate-1749200111594-api-v2.png

Der Ribbon Button Speichern übergibt alle Änderungen an Listeneinträgen, die seit dem Öffnen der Übersicht oder ggf. seit dem letzten Speichern in der Übersicht per Übernehmen bestätigt wurden, an die Datenbank. Dies betrifft auch das Löschen von Entitäten für Einträge nach dem Entfernen (soweit anwendbar).

Sofern beim Schließen der Ansicht ungespeicherte Änderungen vorliegen, erfolgt eine "Änderungen verwerfen?"-Rückfrage.

Inhalte der Standarderfassungsmaske

Die Standarderfassungsmaske für Sprachverwaltungseinträge sieht Textfeld-Elemente für folgende Eigenschaften vor:

Die Felder Resource Bundle (resourceBundle) und Resource Name (name) definieren einen zusammengesetzten Schlüssel, der den "Sprachverwaltungseintrag" eindeutig identifiziert. Auf diese beiden Merkmale beziehen sich Referenzen innerhalb des Systems, z. B. per Wert aus Sprachverwaltung-Wertauflöser oder beim Zugriff auf Sprachverwaltungsresourcen (Berechnungsausdruck).

Daneben zeigt der Detailbereich für jede unterstützte Sprache ein Textfeld an, in dem optional ein ggf. mehrzeiliger Lokalisierungstext für die jeweilige Sprache angegeben werden kann.

Das Mülltonne-Symbol rechts oberhalb des Eingabebereichs ermöglich das Entfernen des Lokalisierungswerts aus dem Listenfeld (values), das hinterlegte Lokalisierungen je Sprache (locale) als Liste von "Sprachverwaltungswert"(LocalizationEntryValue)-Entitäten definiert. Diese Option ist wichtig, da bei der Eingabe von Lokalisieirungstexten ausnahmsweise zwischen der Leeren Zeichenfolge ("") und "Kein Wert" ($null) unterschieden werden muss. Wie im Screenshot für die Sprache Deutsch (de) zu sehen, zeigt das Textfeld einen Platzhaltertext - "(Nicht übersetzt)" - an, solange "Kein Wert" ($null) vorliegt.

Im konkreten Fall wird beim Abruf der Lokalisierung für die Sprache "Deutsch" (de) auf die Lokalisierung für Englisch (en) zurückgegriffen (Details s. Sprache).

images/download/attachments/201683424/image-2025-6-6_12-10-56-version-1-modificationdate-1749204655527-api-v2.png


Effektive Lokalisierung je Sprache:

  • Deutsch: "System"

  • Englisch: "System"

  • Französisch: "Système"

 HINWEIS  Falls für alle Sprachen eine einheitliche Lokalisierung gelten soll, muss diese nicht jeder unterstützten Sprache explizit zugeordnet werden, sondern nur für die Sprache Englisch (en).

Spalten im Listenbereich

Das Datengrid im Listenbereich gibt zusammen mit den Feldern der "Sprachverwaltungseintrag" (LocalizationEntry)-Entität noch zusätzliche Informationen in Spalten aus.

Spalte

Datenfeldname

Datentyp

Beschreibung

Resource Bundle

resourceBundle

String

Textschlüssel für ein vom System vorgegebenes oder fiktives Resource Bundle.

Resource Name

name

String

Textschlüssel, der im angegebenen Resource Bundle eindeutig sein muss.

Aktuell

n/a (berechnet)

String

Effektiver Lokalisierungstext für den per Resource Bundle und Resource Name identifizierten Sprachverwaltungseintrag für die Aktuelle Sprache
 HINWEIS  Diese Spalte gibt für Einträge mit Status "Geändert" (CHANGED) ggf. den Text an, der beim Speichern ggf. überschrieben wird.
 WICHTIG  Diese Spalte berücksichtigt anwendbare Firmenspezifische Sprachanpassungen für Resource Bundle und Resource Name.

<unterstützte Sprache>
per Standard:

  • Deutsch

  • Englisch

  • Französisch

values.value

String

Das Listenfeld values enthält für jede explizit lokalisierte Sprache einen Eintrag vom Typ "Sprachverwaltungswert" (LocalizationEntryValue), der per locale-Feld die Sprache angibt und den zugeordneten Lokalisierungstext im value-Feld enthält.

Die Liste bietet eine Spalte für jede unterstützte Sprache an, in der entweder ein hinterlegter Lokalisierungstext oder anstelle von "Kein Wert" ($null) die im zugehörigen leeren Eingabefeld als Platzhaltertext (s. Anmerkung unten) angezeigte Zeichenfolge erscheint.

 HINWEIS  Für Einträge mit Status "Geändert" (CHANGED) zeigen diese Spalten den ggf. per Übernehmen bestätigten Stand.

 ANMERKUNG  Der Platzhaltertext "(Nicht übersetzt)" wird durch einen Sprachverwaltungseintrag für die Aktuelle Sprache definiert, der im Resource Bundle für die Entität "Sprachverwaltungseintrag" (de.lobster.scm.coresystem.localization.db.LocalizationEntry) unter dem Resource Name NOT_TRANSLATED zu finden ist. Auch dabei sind ggf. Firmenspezifische Sprachanpassungen zu berücksichtigen.

Übersetzungen

(values.length)

Integer

Anzahl der "Übersetzungen" (→ "Sprachverwaltungswert"-Entitäten) im values-Feld

Ist <unterstützte Sprache> lokalisiert?

n/a (berechnet)

Boolean

Die Liste bietet eine Spalte für jede unterstützte Sprache an, in der der Wert $true erscheint, falls das values-Listenfeld einen "Sprachverwaltungswert" für die betreffende Sprache enthält.

 HINWEIS  Für Einträge mit Status "Geändert" (CHANGED) zeigen diese Spalten den ggf. per Übernehmen bestätigten Stand.