Dieses Dokument behandelt folgende Systemvariablen:
| Format/Länge: | A8 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable gibt an, ob die Anwendung in einem Web Browser läuft.
Damit eine Anwendung in einem Web Browser laufen kann, müssen Sie entweder das Natural Web I/O Interface oder Natural for Ajax benutzen.
In einer Anwendung, die über das Natural Web I/O Interface läuft, können Maps verwendet
werden. In einer Anwendung, die über Natural for Ajax läuft, können (mittels PROCESS PAGE-Statement) sowohl Maps
als auch Rich UI-Pages verwendet werden.
Diese Systemvariable kann einen der folgenden Werte enthalten:
| Wert | Beschreibung |
|---|---|
| (empty) | Die Anwendung läuft nicht in einem Web Browser. |
| WEB | Die Anwendung läuft über das Natural Web I/O Interface. Die Verwendung des
PROCESS
PAGE-Statements ist nicht möglich.
|
| RICHGUI | Die Anwendung läuft über Natural for Ajax. Die Verwendung des PROCESS PAGE-Statements ist
möglich.
|
| Format/Länge: | A8 |
| Inhalt änderbar | Nein |
Diese Systemvariable enthält den Typ des Geräts, von dem Natural aufgerufen wurde. Sie kann einen der folgenden Werte enthalten:
| Wert | Beschreibung |
|---|---|
BATCH
|
Batch-Betrieb. |
COLOR
|
3279-Kompatibilität.
3278-Bildschirm (Gerät mit erweiterter Attribut-Unterstützung). |
VIDEO
|
3270-Bildschirm, PC-Bildschirm, VT- oder X-Terminal oder ein beliebiger UNIX-Terminaltyp. |
TTY
|
Teletype- oder anderer Start/Stop-Typ. |
PC
|
Benutzung von Natural Connection ist aktiviert (durch Profilparameter
PC=ON bzw.
Terminalkommando %+).
|
BTX
|
BTX-Gerät. |
SPOOL
|
3270-Drucker. |
ASYNCH
|
Asynchrone Session. |
BROWSER |
Web I/O-Bildschirmgerät (Server-Umgebung). |
Anmerkung
In einer Server-Umgebung enthält *DEVICE den Wert
BROWSER. Das gilt selbst dann, wenn der Server in einer Batch-Umgebung
läuft. Der Grund dafür ist, dass das Gerät, das die Ausgabe macht, der Browser ist.
| Format/Länge: | A8 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable ist nur unter Natural Security relevant. Sie enthält die ID, über die der Benutzer in einer geschützte Library angemeldet angeloggt ist, also die ID, über die er an die Library gelinkt ist. Dies ist entweder die ID der Gruppe, über die der Benutzer gelinkt ist, oder die Benutzerkennung (User-ID) des Benutzers selbst (falls er direkt an die Library gelinkt ist).
*GROUP enthält keinen Wert
bei einem Logon in eine nicht geschützte Library (wo kein Link verwendet wird),
wenn Natural Security nicht aktiv ist.
| Format/Länge: | A8 |
| Inhalt modifizierbar | Ja |
Diese Systemvariable enthält die Kennung des Druckers, der verwendet wird, wenn das
Terminalkommando %H
eingegeben wird.
| Format/Länge: | A8 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält die Benutzerkennung (User-ID) des Benutzers.
| Com-plete | Der Wert von *INIT-USER ist die
Com-plete-Logon-Benutzerkennung.
|
|---|---|
| CICS | Der Wert von *INIT-USER wird
durch den Parameter USERID des Macros NTCICSP(abhängig von der Version des
installierten Natural CICS Interface) bestimmt, wobei der erste Subparameter für
CICS-Terminal-Sessions, der zweite für Nicht-Terminal-Sessions, d.h. für
asynchrone, DPLed- usw. Sessions und der dritte für DTP-Sessions gilt.
Bei
Angabe von Bei Angabe von Die Angabe von Wenn eine CICS-Benutzerkennung ungültig ist oder ignoriert wird, wird die editierte (nicht gepackte) CICS-Task-Nummer bei Nicht-Terminal-CICS-Sessions genommen, d.h. bei asynchronen oder DPLed usw.; bei Terminal-Sessions wird die 3-Byte-Operator ID genommen, wenn sie nicht leer ist, andernfalls wird die CICS-Terminalkennung genommen; bei DTP-Sessions wird die Pseudo-Terminalkennung genommen. |
| IMS TM | Der Wert von *INIT-USER ist die
IMS TM Signon-Benutzerkennung.
|
| TSO | Der Wert von *INIT-USER ist die
TSO Logon-Benutzerkennung.
|
*INIT-USER enthält den Namen des Jobs oder die
Benutzerkennung, unter dem oder der die Natural-Session läuft.
| z/OS | Der Wert von *INIT-USER wird durch den
Subparameter USERID des Profilparameters OSP bzw. des
Parameter-Makros NTOSP bestimmt:
|
|---|---|
| Natural for IMS:
BMP |
Der Wert von *INIT-USER wird
durch den Subparameter USERID des Makros NTIMSPE bestimmt.
Der Wert
von Bei Bei Wenn kein Security-Paket verwendet wird, wird der Wert von
|
| Format/Länge: | I1 |
| Inhalt modifizierbar | Ja |
Diese Systemvariable enthält den Sprachindikator (Sprachcode). Dieser Sprachindikator
wird bei Editiermasken von Datumsfeldern sowie bei Natural- oder benutzergeschriebenen
Fehlermeldungen, die über INPUT- oder REINPUT-Statements ausgegeben werden,
verwendet.
Jedem Sprachcode ist ein aus einem Zeichen bestehender Code zugewiesen; in
sprachabhängigen Anwendungen werden alle Und-Zeichen (&) in Namen von Objekten (z.B.
Maps, Dialoge, Helproutinen, Subprogramme) durch diesen Ein-Zeichen-Code ersetzt.
Einzelheiten zum Gebrauch des Und-Zeichens in Objektnamen finden Sie in den Beschreibungen
der Statements CALLNAT (operand1),
FETCH (operand1),
INCLUDE
(copycode-name) und INPUT (USING MAP)
und beim Session-Parameter HE
(operand1).
Es stehen Ihnen 60 verschiedene Sprachcodes zur Verfügung. Die Codes sind unten aufgeführt.
Die Systemvariable *LANGUAGE wird vom
Natural-Profilparameter ULANG gesetzt, der die für Datums-Editiermasken,
Systemmeldungen, Benutzermeldungen, Hilfetexte, Helproutinen und mehrsprachige Masken zu
benutzende Sprache festlegt.
Auf Großrechnern benutzt der Compiler zur Bestimmung des Map-Namens immer den aktuellen
Wert von *LANGUAGE. Zur Laufzeit versucht Natural for z/OS
zuerst die Map mit der aktuellen *LANGUAGE-Einstellung zu
lesen. Wenn sie nicht gefunden wird, versucht Natural die Map mit der Standard-Sprache zu
finden.
Einzelheiten zum Einsatz von Sprachcodes entnehmen Sie dem Abschnitt Mehrsprachige Benutzeroberflächen im Leitfaden zur Programmierung.
Den einzelnen Sprachcodes sind die folgenden Sprachen zugeordnet (die rechte Spalte zeigt die jeweiligen einbuchstabigen Codes für sprachabhängige Objektnamen):
Einbyte-Sprachen (Schreibrichtung von links nach rechts) mit lateinischen Kleinbuchstaben
Einbyte-Sprachen (Schreibrichtung von links nach rechts) ohne lateinische Kleinbuchstaben
Einbyte-Sprachen (beide Schreibrichtungen) ohne lateinische Kleinbuchstaben
| Code | Sprache | Zeichencode in sprachspezifischen Objektnamen |
|---|---|---|
| 1 | Englisch | 1 |
| 2 | Deutsch | 2 |
| 3 | Französisch | 3 |
| 4 | Spanisch | 4 |
| 5 | Italienisch | 5 |
| 6 | Niederländisch | 6 |
| 7 | Türkisch | 7 |
| 8 | Dänisch | 8 |
| 9 | Norwegisch | 9 |
| 10 | Albanisch | A |
| 11 | Portugiesisch | B |
| 12 | Chinesisch Lateinschrift (Taiwan) | C |
| 13 | Tschechisch | D |
| 14 | Slowakisch | E |
| 15 | Finnisch | F |
| 16 | Ungarisch | G |
| 17 | Isländisch | H |
| 18 | Koreanisch | I |
| 19 | Polnisch | J |
| 20 | Rumänisch | K |
| 21 | Schwedisch | L |
| 22 | Kroatisch | M |
| 23 | Katalanisch | N |
| 24 | Baskisch | O |
| 25 | Afrikaans | P |
| Code | Sprache | Zeichencode in sprachspezifischen Objektnamen |
|---|---|---|
| 26 | Bulgarisch | Q |
| 27 | Griechisch | R |
| 28 | Japanisch (Katakana) | S |
| 29 | Russisch | T |
| 30 | Serbisch | U |
| Code | Sprache | Zeichencode in sprachspezifischen Objektnamen |
|---|---|---|
| 31 | Arabisch | V |
| 32 | Farsi (Iran) | W |
| 33 | Hebräisch | X |
| 34 | Urdu (Pakistan) | Y |
| 35 | (für zukünftige Verwendung reserviert) | Z |
| 36 | (für zukünftige Verwendung reserviert) | a |
| 37 | (für zukünftige Verwendung reserviert) | b |
| 38 | (für zukünftige Verwendung reserviert) | c |
| 39 | (für zukünftige Verwendung reserviert) | d |
| 40 | (für zukünftige Verwendung reserviert) | e |
| Code | Sprache | Zeichencode in sprachspezifischen Objektnamen |
|---|---|---|
| 41 | (Sie können diesem Code eine Sprache zuweisen) | f |
| 42 | (Sie können diesem Code eine Sprache zuweisen) | g |
| 43 | (Sie können diesem Code eine Sprache zuweisen) | h |
| 44 | (Sie können diesem Code eine Sprache zuweisen) | i |
| 45 | (Sie können diesem Code eine Sprache zuweisen) | j |
| 46 | (Sie können diesem Code eine Sprache zuweisen) | k |
| 47 | (Sie können diesem Code eine Sprache zuweisen) | l |
| 48 | (Sie können diesem Code eine Sprache zuweisen) | m |
| 49 | (Sie können diesem Code eine Sprache zuweisen) | n |
| 50 | (Sie können diesem Code eine Sprache zuweisen) | o |
| Code | Sprache | Zeichencode in sprachspezifischen Objektnamen |
|---|---|---|
| 51 | Hindi | p |
| 52 | Malaiisch | q |
| 53 | Thai | r |
| 54 | (für zukünftige Verwendung reserviert) | s |
| 55 | (für zukünftige Verwendung reserviert) | t |
| 56 | (für zukünftige Verwendung reserviert) | u |
| Code | Sprache | Zeichencode in sprachspezifischen Objektnamen |
|---|---|---|
| 57 | Chinesisch (Volksrepublik China) | v |
| 58 | Chinesisch (Taiwan) | w |
| 59 | Japanisch (Kanji) | x |
| 60 | Koreanisch | y |
| Format/Länge: | A8 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält die Natural-Version (außer den Cumulative Fix-Informationen).
Informationen zum Cumulative Fix sind in der Systemvariable *PATCH-LEVEL
enthalten.
Weitere Informationen siehe Version im Glossary.
| Format/Länge: | A253 |
| Inhalt modifizierbar | Nein |
Standardmäßig ist der Wert von *NET-USER identisch mit dem
von *USER.
| Format/Länge: | A253 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält den Namen des aktuell benutzten Parametermoduls (wenn
PARM=name nicht als ein dynamischer
Parameter angegeben wurde, ist *PARM-USER leer).
| Format/Länge: | A8 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält die aktuelle Cumulative Fix-Nummer.
Informationen zur Versionsnummer, siehe *NATVERS und Version im
Glossary.
| Format/Länge: | A32 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält eine eindeutige Session-ID.
| Format/Länge: | L |
| Inhalt modifizierbar | Nein |
Diese Systemvariable zeigt an, ob eine Bildschirm-Eingabe/Ausgabe möglich ist oder nicht.
Sie kann einen der folgenden Werte enthalten:
| TRUE | Bildschirm-Eingabe/Ausgabe ist möglich. |
|---|---|
| FALSE | Bildschirm-Eingabe/Ausgabe ist nicht möglich. |
Im Falle einer dialog-orientierten Anwendung wird *SCREEN-IO
mit TRUE initialisiert.
In einer Natural-Batch-Session wird *SCREEN-IO mit
FALSE initialisiert (außer bei einem Remote Development Server).
Wenn Natural als Db2 Stored Procedures Server (*SERVER-TYPE = DB2-SP) oder als RPC Server
(*SERVER-TYPE = RPC)
*SCREEN-IO gestartet wird, wird
*SCREEN-IO auf FALSE gesetzt.
Wenn *SCREEN-IO auf FALSE gesetzt ist und ein
Statement ausgeführt wird, das einen Dialog mit dem Benutzer bedingt, gibt Natural den
Fehler NAT0723 aus.
| Format/Länge: | A32 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable zeigt an, als welcher Server-Typ Natural gestartet wurde.
Sie kann einen der folgenden Werte enthalten:
| DB2-SP | Natural Db2 Stored Procedures Server |
|---|---|
| DEVELOP | Natural Development Server |
| RPC | Natural RPC Server |
| WEBIO | Natural Web I/O Interface Server |
Wenn Natural nicht als Server gestartet wird, wird
*SERVER-TYPE auf Leerzeichen gesetzt.
Anmerkung
*SERVER-TYPE bezieht sich auf Natural als Ganzes, nicht auf
das gerade ausgeführte Natural-Programm (das innerhalb eines Server-Naturals als Client-
oder Server-Programm ausgeführt werden kann).
| Format/Länge: | A16 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält den Typ der verwendeten Benutzeroberfläche:
| CHARACTER | Zeichen-orientierte Benutzeroberfläche. |
|---|---|
| GUI | Graphische Benutzeroberfläche. |
| Format/Länge: | A8 |
| Inhalt modifizierbar | Nein |
Diese Systemvariable enthält die Benutzerkennung (User-ID), mit der der Benutzer Natural über die Natural-Security-Logon-Prozedur aufgerufen hat.
Wenn der Profilparameter AUTO=ON (Automatic Logon) gesetzt ist oder wenn
Natural Security nicht aktiv ist, entspricht der Wert von
*USER dem von *INIT-USER.
| Format/Länge: | A32 |
| Inhalt modifizierbar | Nein |
Wenn Natural Security installiert ist, enthält diese Systemvariable den Namen des gerade aktiven Natural-Benutzers.
Wenn Natural Security nicht installiert ist, enthält diese Systemvariable den Wert
SYSTEM.
| Format/Länge: | B16 |
| Inhalt modifizierbar | Nein |
Die Systemvariable *UUID enthält eine binäre
(16-Byte-)Zeichenkette, die einen Universally Unique Identifier (UUID) darstellt.
Natural generiert *UUID als UUID der Version 8, entsprechend
den Spezifikationen von RFC 9562.
*UUID-Struktur:
Die UUID wird anhand der folgenden Informationen erzeugt.
Erweiterter TOD-Clock-Wert
Dieser Wert wird mit der Anweisung STCKE (Store Clock Extended) ermittelt und stellt
einen Zeitstempel dar, der auf einer Zeitperiode ab dem 1. Januar 1900 basiert.
Zufallswert
Die Zufallszahl wird aus dem STCKE-Wert, der CPU-Seriennummer und dem LPAR-Namen
abgeleitet, zusammen mit zufälligen XORs und Primzahl-basierten Multiplikationen, um
die Entropie zu erhöhen.
4 Bits, die die Versionsnummer darstellen
4 Bits, die die Variantennummer darstellen
Beispiel:
