Mithilfe der NLS-Funktionen lassen sich Business Objects in weiteren Inhaltssprachen öffnen. Zu den NLS-Funktionen gehören:
- getNLSContentLanguage
- getNLSDisplayLanguage
- setNLSContentLanguage
- setNLSDisplayLanguage
- setNLSLanguages
Grundlegende Informationen zu den allgemeinen Funktionen der System-Skriptsprache erhalten Sie im Dokument System-Skriptsprache: Allgemeine Funktionen.
getNLSContentLanguage
Name | getNLSContentLanguage |
Beschreibung | getNLSContentLanguage gibt den ISO-Code der aktuellen Inhaltssprache zurück. |
Signaturen | String getNLSContentLanguage() |
Parameter | Keine |
Ergebnis | Der ISO-Code der aktuellen Inhaltssprache als eine Zeichenkette. |
Fehlerquellen | Keine. |
Beispiele | getNLSContentLanguage() gibt die aktuelle Inhaltssprache zurück. |
Kontext | ALL |
Hinweise | Die Inhaltssprache bestimmt u. a., in welcher Sprache mehrsprachige Attribute von Objekten in einer OLTP-Datenbank geöffnet werden. |
Siehe auch | getNLSDisplayLanguage |
Folgendes Beispiel aus der Aktivitätsdefinition help.getNLSContentLanguage zeigt den ISO-Code der aktuellen Inhaltssprache an:
function create() { var r_contentLanguage := getNLSContentLanguage(); result.CONTENT_LANGUAGE := r_contentLanguage; }
getNLSDisplayLanguage
Name | getNLSDisplayLanguage |
Beschreibung | getNLSDisplayLanguage gibt den ISO-Code der aktuellen Anzeigesprache zurück. |
Signaturen | String getNLSDisplayLanguage() |
Parameter | Keine. |
Ergebnis | Der ISO-Code der aktuellen Anzeigesprache als eine Zeichenkette. |
Fehlerquellen | Keine. |
Beispiele | getNLSDisplayLanguage() gibt die aktuelle Anzeigesprache zurück. |
Kontext | ALL |
Hinweise | Die Anzeigesprache bestimmt u. a., in welcher Sprache mehrsprachige Attribute von Objekten in der Repository-Datenbank geöffnet werden. |
Siehe auch | getNLSContentLanguage |
Folgendes Beispiel aus der Aktivitätsdefinition help.getNLSDisplayLanguage zeigt den ISO-Code der aktuellen Anzeigesprache an:
function create() { var r_displayLanguage := getNLSDisplayLanguage(); result.DISPLAY_LANGUAGE := r_displayLanguage; }
setNLSContentLanguage
Name | setNLSContentLanguage |
Beschreibung | setNLSContentLanguage setzt die aktuelle Inhaltssprache. |
Signaturen | setNLSContentLanguage(String language) |
Parameter | language ist der ISO-Code der neuen Inhaltssprache. |
Ergebnis | Nach dem Aufruf wird die Inhaltssprache geändert. Anschließend werden die mehrsprachigen Attribute aller Objekte aus einer OLTP-Datenbank in der geänderten Inhaltssprache geöffnet. Objekte, die vor dem Aufruf der Funktion geöffnet wurden, werden nicht verändert. |
Fehlerquellen | Keine. |
Beispiele | setNLSContentLanguage("en") setzt die aktuelle Inhaltssprache zu Englisch. |
Kontext | ALL |
Hinweise | Wenn ein Benutzer einen Prozess startet, wird der Prozess im Kontext der in den Benutzereinstellungen hinterlegten Inhalts- und Anzeigesprachen ausgeführt. |
Siehe auch | setNLSDisplayLanguage, setNLSLanguages |
Folgendes Beispiel aus der Aktivitätsdefinition help.setNLSContentLanguage zeigt die Bezeichnung eines Artikels in allen aktiven Inhaltssprachen:
function create() { var p_item := parameters.ITEM; var r_descriptions := ""; var item := loadItem(p_item); if (not isNull(item)) { /* get system and database names */ var systemName := cast(String, call("help.js.getSystemName", hashMap()).NAME); var databaseName := cast(String, call("help.js.getDatabaseName", hashMap()).NAME); /* get system and database Guid */ var system := getByBusinessKey("CONFIGURATION", CisObject(com.cisag.sys.configuration.obj.System), systemName, 1); var database := getByBusinessKey("CONFIGURATION", CisObject(com.cisag.sys.configuration.obj.Database), system:guid, databaseName, 1); /* query configuration database for active content languages */ var params as Unknown[]; add(params, database:guid); add(params, 1); /* active version */ var activeLanguages := getCisObjectList("CONFIGURATION", "SELECT FROM com.cisag.sys.configuration.obj.DatabaseLanguage o WHERE o:databaseGuid = ? AND o:version = ?", params, 99); /* get item description in all active content lanaguges */ for (l as CisObject(com.cisag.sys.configuration.obj.DatabaseLanguage) : activeLanguages) { r_descriptions := r_descriptions + " [" + l:language + "] "; setNLSContentLanguage(l:language); item := loadItem(p_item); r_descriptions := r_descriptions + item:description; } } result.DESCRIPTIONS := trim(r_descriptions); }
setNLSDisplayLanguage
Name | setNLSDisplayLanguage |
Beschreibung | setNLSDisplayLanguage setzt die aktuelle Anzeigesprache. |
Signaturen | setNLSDisplayLanguage(String language) |
Parameter | language ist der ISO-Code der neuen Anzeigesprache. |
Ergebnis | Nach dem Aufruf wird die Anzeigesprache geändert. Anschließend werden die mehrsprachigen Attribute aller Objekte aus der Repository-Datenbank in der geänderten Anzeigesprache geöffnet. Objekte, die vor dem Aufruf der Funktion geöffnet wurden, werden nicht verändert. |
Fehlerquellen | Keine. |
Beispiele | setNLSDisplayLanguage("en") setzt die aktuelle Anzeigesprache zu Englisch. |
Kontext | ALL |
Hinweise | Wenn ein Benutzer einen Prozess startet, wird der Prozess im Kontext der in den Benutzereinstellungen hinterlegten Inhalts- und Anzeigesprachen ausgeführt. |
Siehe auch | setNLSContentLanguage, setNLSLanguages |
Folgendes Beispiel aus der Aktivitätsdefinition help.setNLSDisplayLanguage setzt die Anzeigesprache zu der Korrespondenzsprache eines Partners und gibt die Bezeichnung eines ValueSets aus:
const State as valueSet(com.cisag.sys.workflow.ActivityState); function create() { var p_partner := parameters.PARTNER; var r_description := ""; var partner := loadPartner(p_partner); if (not isNull(partner)) { setNLSDisplayLanguage(cast(String, first(partner->Language:isoCode, getNLSDisplayLanguage())));r_description := valueSetDescription(State, 10); } result.DESCRIPTION := r_description; }
setNLSLanguages
Name | setNLSLanguages |
Beschreibung | setNLSLanguages setzt sowohl die aktuelle Inhaltssprache als auch die aktuelle Anzeigesprache. |
Signaturen | setNLSLanguages(String language) |
Parameter | language ist der ISO-Code der neuen Inhalts- und Anzeigesprache. |
Ergebnis | Nach dem Aufruf werden die Inhalts- und Anzeigesprachen geändert. Anschließend werden die mehrsprachigen Attribute aller Objekte aus der Repository und der OLTP-Datenbank in der geänderten Sprache geöffnet. Objekte, die vor dem Aufruf der Funktion geöffnet wurden, werden nicht verändert. |
Fehlerquellen | Keine. |
Beispiele | setNLSLanguages("en") setzt die aktuelle Inhalts-und Anzeigesprache auf Englisch.
|
Kontext | ALL |
Hinweise | Wenn ein Benutzer einen Prozess startet, wird der Prozess im Kontext der in den Benutzereinstellungen hinterlegten Inhalts- und Anzeigesprachen ausgeführt. |
Siehe auch | setNLSContentLanguage, setNLSDisplayLanguage |
Folgendes Beispiel aus der Aktivitätsdefinition help.setNLSLanguages setzt die Inhalts- und Anzeigesprache zu der Korrespondenzsprache des Arbeitsgebers eines Benutzers und zeigt die Bezeichnung eines ValueSet-Eintrags in dieser Sprache an:
function create() { var p_partner := parameters.PARTNER; var r_description := ""; var partner := loadPartner(p_partner); if (not isNull(partner)) { var company := getCustomizingValue("com.cisag.app.General"):company; var employers := loadTargetsOfPartnerRelations(partner:guid, company, "Employee"); setNLSDisplayLanguage(cast(String, first(employers[0]->Language:isoCode, getNLSDisplayLanguage()))); r_description := valueSetDescription("com.cisag.sys.workflow.ActivityState", 10); } result.DESCRIPTION := r_description; }