PROCESS COMMAND

#### Search Results

Search

# PROCESS COMMAND

#### Structured Mode-Syntax

`PROCESS COMMAND ACTION`
| `CLOSE` |
| `CHECK` `EXEC` `TEXT` `HELP` |  | `USING` `PROCESSOR-NAME=`operand1 `COMMAND-LINE` (index[`:`index])=operand2
`GET` `USING` `PROCESSOR-NAME=`operand1 `GETSET-FIELD-NAME``=`operand3
`SET` `USING` `GETSET-FIELD-NAME``=`operand3 `GETSET-FIELD-NAME``=`operand3 `GETSET-FIELD-VALUE``=`operand4

#### Reporting Mode-Syntax

`PROCESS COMMAND ACTION`
| `CLOSE` [`GIVING` `NATURAL-ERROR`] |
| `CHECK` `EXEC` `TEXT` `HELP` |  | `USING` `PROCESSOR-NAME=`operand1 `COMMAND-LINE` (index[`:`index])=operand2 `GIVING` `RESULT-FIELD` (index[:index ]) `RETURN-CODE` [`NATURAL-ERROR`]
`GET` `USING` `PROCESSOR-NAME=`operand1 `GETSET-FIELD-NAME``=`operand3 `GETSET-FIELD-VALUE=`operand4 [`NATURAL-ERROR`]
`SET` `USING` `GETSET-FIELD-NAME``=`operand3 `GETSET-FIELD-NAME``=`operand3 `GETSET-FIELD-VALUE``=`operand4 `GETSET-FIELD-VALUE=`operand4 [`GIVING` `NATURAL-ERROR`]

Dieses Dokument behandelt folgende Themen:

- Funktion

- Syntax-Beschreibung

- Das DDM COMMAND

- Beispiele

Eine Erläuterung der in dem Syntax-Diagramm verwendeten Symbole entnehmen Sie dem Abschnitt Syntax-Symbole.

Gehört zur Funktionsgruppe: Aufrufen von Programmen und Subprogrammen

## Funktion

Sobald ein Kommando-Prozessor mit der Natural-Utility `SYSNCP` erstellt worden ist, kann er von einem Natural-Programm mit dem Statement `PROCESS COMMAND` aufgerufen werden.

Näheres zur Erstellung eines Natural-Kommandoprozessors finden Sie in der Beschreibung des Dienstprogramms (Utility) SYSNCP in der Debugger und Dienstprogramme-Dokumentation.

Anmerkung
Das Wort `COMMAND` im Statement `PROCESS COMMAND` ist eigentlich der Name einer View (Datensicht). Der Name der verwendeten View muss nicht unbedingt `COMMAND` sein; aber wir empfehlen die Verwendung von `COMMAND`, da ein DDM dieses Namens existiert. Dieses DDM muss im `DEFINE DATA`-Statement referenziert werden, zum Beispiel: `COMMAND VIEW OF COMMAND`.

#### Security-Hinweise

Mit Natural Security können Sie die Verwendung bestimmter in einem Kommando-Prozessor definierter Schlüsselwörter und/oder Funktionen einschränken. Schlüsselwörter und/oder Funktionen können für jeden einzelnen Benutzer (oder Gruppen von Benutzern) erlaubt bzw. verboten werden.

Weitere Informationen siehe Natural Security-Dokumentation.

## Syntax-Beschreibung

Operanden-Definitionstabelle:

Operand | Mögliche Struktur | Mögliche Formate | Referenzierung erlaubt | Dynam. Definition
--- | --- | --- | --- | ---
operand1 | C | S |  |  |  | A |  |  |  |  |  |  |  |  |  |  |  |  | nein | nein
operand2 | C | S | A | G |  | A |  | N |  |  |  |  |  |  |  |  |  |  | nein | nein
operand3 | C | S |  |  |  | A |  | N |  |  |  |  |  |  |  |  |  |  | nein | nein
operand4 | C | S |  |  |  | A |  | N | P | I |  |  |  |  |  |  |  |  | nein | nein

Syntax-Element-Beschreibung:

Syntax-Element | Beschreibung
--- | ---
`CLOSE` | CLOSE-Option: `CLOSE` beendet den Einsatz des Kommando-Prozessors und gibt den Kommando-Prozessor-Puffer wieder frei. Wenn der Kommando-Prozessor während einer Session benutzt und nicht mit `CLOSE` freigegeben wird, enthält Ihr Thread einen Puffer namens `NCPWORK`. Die Parameter dieses Puffers können Sie mit dem Systemkommando `BUS` auswerten. Der Puffer wird vom Laufzeit-Teil des Kommando-Prozessors benötigt. Er kann mit dem Statement `PROCESS COMMAND ACTION CLOSE` wieder freigegeben werden. Wenn auf dieses Statement ein anderes `PROCESS COMMAND`-Statement folgt, wird der Kommando-Prozessor-Puffer erneut geöffnet. Siehe auch Beispiel 1 − PROCESS COMMAND ACTION CLOSE.
`CHECK` | CHECK-Option: `CHECK` dient als Vorsichtsmaßnahme, um herauszufinden, ob ein Kommando mit dem Statement `PROCESS COMMAND EXEC` ausführbar ist. Für einen bestimmten Prozessor-Namen erfolgt zur Laufzeit eine Prüfung in zwei Schritten: Es wird geprüft, ob der Prozessor in der aktuellen Library oder einer ihrer Steplibs vorhanden ist. Es wird geprüft, ob der Inhalt der Kommandozeile `COMMAND−LINE (1)` akzeptabel ist. Außerdem werden die Laufzeit-Aktionen `R`, `M` und `1-9` in `RESULT−FIELD (1:9)` geschrieben. Wenn Sie das Feld `NATURAL−ERROR` in der View (Datensicht) oder in der `GIVING`-Klausel angeben, wird der Fehlercode in diesem Feld ausgegeben. Wird dieses Feld nicht angegeben und die Kommandoanalyse stößt auf einen Fehler, dann erzeugt Natural einen Systemfehler. Anmerkung Da die Funktion der `CHECK`-Option auch als Teil der `EXEC`-Option ausgeführt wird (siehe unten), ist es nicht nötig, `CHECK` vor jeder `EXEC`-Option zu verwenden.
`EXEC` | EXEC-Option: `EXEC` funktioniert genau wie `CHECK` und bewirkt zusätzlich, dass die mit dem Runtime Action Editor angegebenen Laufzeit-Aktionen ausgeführt werden. Es wird nur `COMMAND−LINE (1)` benötigt. Sie können bis zu 9 Ausprägungen von `RESULT-FIELD` verwenden (im Hinblick auf optimale Verarbeitungszeit sollten Sie jedoch nur soviele Ausprägungen verwenden wie Sie tatsächlich benötigen). Anmerkung `EXEC` ist die einzige Option, mit der das gerade aktive Programm verlassen werden kann. Dies ist der Fall, wenn die Laufzeit-Aktion ein `FETCH`- oder `STOP`-Statement enthält. Siehe auch Beispiel 2 − PROCESS COMMAND ACTION EXEC.
`HELP` | HELP-Option: Mit `HELP` erhalten Sie eine Liste aller gültigen Schlüsselwörter, Synonyme und Funktionen, um beispielsweise Online-Hilfe-Fenster zu erzeugen. Die Liste ist in dem Feld bzw. den Feldern von `RESULT-FIELD` enthalten. Die Art der erhaltenen Hilfe hängt vom Inhalt der Kommandozeilen ab: `COMMAND-LINE (1)` muss die Suchkriterien enthalten. `COMMAND-LINE (2)` (falls angegeben) muss den Startwert oder einen Suchwert enthalten. `COMMAND-LINE (3)` (falls angegeben) muss einen Startwert enthalten. Weitere Informationen siehe die folgenden Abschnitte: HELP für Schlüsselwörter HELP für Synonyme HELP für globale Funktionen HELP für lokale Funktionen HELP für IKN HELP für IFN Anmerkung Im Hinblick auf optimale Verarbeitungszeit sollte das Feld `RESULT-FIELD` nicht mehr Ausprägungen haben als Zeilen auf dem Schirm angezeigt werden sollen. Mindestens eine Ausprägung ist erforderlich.
`TEXT` | TEXT-Option: Mit der Option `TEXT` erhalten Sie allgemeine Informationen über den Prozessor sowie Text zu einem Schlüsselwort bzw. einer Funktion. Der Text ist derselbe, der bei der Definition eines Kommando-Prozessors mit der `SYSNCP` Utility im Keyword Editor oder Action Editor eingegeben wurde. Weitere Informationen siehe die folgenden Abschnitte: TEXT für allgemeine Informationen TEXT für Schlüsselwort-Informationen TEXT für Funktions-Informationen Anmerkung Um auf Text zu Schlüsselwörtern oder Funktionen zugreifen zu können, muss im Feld `Catalog user texts` auf dem Schirm Processor Header Maintenance 3 der `SYSNCP`-Utility ein `Y` (ja) eingetragen sein, siehe Abschnitt Miscellaneous Options - Header 3.

### HELP für Schlüsselwörter

Diese Option liefert eine alphabetisch sortierte Liste von Schlüsselwörtern bzw. Synonymen und ihren IKNs (IKN = Internal Keyword Number = Interne Schlüsselwort-Nummer)

Kommandozeile | Inhalt
--- | ---
1 | Muss mit Indikator `K` (für Keyword) anfangen.
Die Typen der gewünschten Schlüsselwörter:
* | Schlüsselwörter aller Typen
1 | Schlüsselwörter vom Typ 1
2 | Schlüsselwörter vom Typ 2
3 | Schlüsselwörter vom Typ 3
P | Schlüsselwörter vom Typ P (Parameter)
Optionen:
I | Gibt zusätzlich zu Schlüsselwörtern die IKN zurück.
T | Zeigt das Schlüsselwort teilweise in Großbuchstaben (um mögliche Abkürzung zu zeigen).
S | Gibt zusätzlich zu Schlüsselwörtern Synonyme zurück.
X | Gibt nur Synonyme der angegebenen Schlüsselwörter zurück.
A | Interne Schlüsselwörter werden auch zurückgegeben.
+ | Suche schließt Startwert nicht mit ein.
2 | Startwert für Schlüsselwort-Suche (optional). Standardmäßig beginnt die Suche ab dem Startwert. Wenn Sie jedoch Option `+` angeben, schließt die Suche den Startwert selbst nicht mit ein, sondern beginnt ab dem nächsthöheren Wert.

Im Feld `RESULT-FIELD (1:n)` erhalten Sie die angegebene Liste.

#### Beispiel:

    Command Line 1:    K*X

Gibt alle Synonyme aller Schlüsselworttypen zurück.

    Command Line 1:    K123S

Gibt alle Schlüsselwörter vom Typ 1, 2 und 3 einschließlich ihrer Synonyme zurück.

### HELP für Synonyme

Für eine bestimmte IKN (Internal Keyword Number = Interne Schlüsselwort-Nummer) liefert diese Option das ursprüngliche Schlüsselwort sowie alle Synonyme.

Kommandozeile | Inhalt
--- | ---
1 | Muss mit Indikator `S` anfangen.
Option:
T | Zeigt Schlüsselwort teilweise in Großbuchstaben (um mögliche Abkürzung zu zeigen).
2 | IKN des Schlüsselworts im Format N4.

Im Feld `RESULT-FIELD (1)` erhalten Sie das Schlüsselwort selbst. In den Feldern `RESULT-FIELD (2:n)` erhalten Sie die Synonyme des Schlüsselworts.

#### Beispiel:

Eingabe: | Ausgabe:
--- | ---
    Command Line 1:    S
    Command Line 2:    1003
    Result-Field 1:    Edit
    Result-Field 2:    Maintain
    Result-Field 3:    Modify

### HELP für globale Funktionen

Diese Option liefert eine Liste aller globalen Funktionen.

Kommandozeile | Inhalt
--- | ---
1 | Muss mit Indikator `G` anfangen.
Optionen:
I | Die Interne Funktionsnummer (IFN) wird auch zurückgegeben.
T | Zeigt Schlüsselwort teilweise in Großbuchstaben (um mögliche Abkürzung zu zeigen).
S | Die Schlüsselwörter werden in `RESULT-FIELD` in Spaltenform ausgegeben.
A | Interne Schlüsselwörter werden auch zurückgegeben.
1 | Nur Funktionen, die das angegebene Schlüsselwort vom Typ 1 enthalten, werden zurückgegeben.
2 | Nur Funktionen, die das angegebene Schlüsselwort vom Typ 2 enthalten, werden zurückgegeben.
3 | Nur Funktionen, die das angegebene Schlüsselwort vom Typ 3 enthalten, werden zurückgegeben.
+ | Suche schließt Startwert nicht mit ein.
2 | Startwert für Suche nach globalen Funktionen. Schlüsselwörter müssen in der Reihenfolge `123` angegeben werden. Standardmäßig beginnt die Suche ab dem Startwert. Wenn Sie jedoch Option `+` angeben, schließt die Suche den Startwert selbst nicht mit ein, sondern beginnt ab dem nächsthöheren Wert.
3 | Muss leer sein.
4 | Wenn Sie nur nach globalen Funktionen eines bestimmten Schlüsselworts suchen möchten, geben Sie hier das betreffende Schlüsselwort an. Gleichzeitig müssen Sie den Schlüsselwort-Typ (1, 2 oder 3) als Option (siehe oben) angeben.

Im Feld `RESULT-FIELD (1:n)` erhalten Sie die angegebene Liste.

#### Beispiel:

Eingabe: | Ausgabe:
--- | ---
    Command Line 1:    G
    Command Line 2:    ADD
    Result-Field 1:    ADD CUSTOMER
    Result-Field 2:    ADD FILE
    Result-Field 3:    ADD USER

### HELP für lokale Funktionen

Diese Option liefert eine Liste aller lokalen Funktionen für einen bestimmten Platz.

Kommandozeile | Inhalt
--- | ---
1 | Muss mit Indikator `L` anfangen.
Optionen:
I | Die Interne Funktionsnummer (IFN) wird auch zurückgegeben.
T | Zeigt Schlüsselwort teilweise in Großbuchstaben (um mögliche Abkürzung zu zeigen).
S | Die Schlüsselwörter werden in `RESULT-FIELD` in Spaltenform ausgegeben.
A | Interne Schlüsselwörter werden auch zurückgegeben.
1 | Nur Funktionen, die das angegebene Schlüsselwort vom Typ 1 enthalten, werden zurückgegeben.
2 | Nur Funktionen, die das angegebene Schlüsselwort vom Typ 2 enthalten, werden zurückgegeben.
3 | Nur Funktionen, die das angegebene Schlüsselwort vom Typ 3 enthalten, werden zurückgegeben.
C | Nur Funktionen, die für den aktuellen Platz definiert sind, werden zurückgegeben (Kommandozeile 3 wird ignoriert).
F | Ruft rekursive Liste lokaler Funktionen auf, d.h. alle lokalen Kommandos, die zum aktuellen/angegebenen Platz führen, werden zurückgegeben.
2 | Startwert für Suche nach lokalen Funktionen (optional). Schlüsselwörter müssen in der Reihenfolge `123` angegeben werden.
3 | Der Platz, für den die Liste gewünscht wird. Schlüsselwörter müssen in der Reihenfolge 123 angegeben werden. Wenn kein Platz angegeben wird, wird der aktuelle Platz des Kommando-Prozessors genommen.
4 | Schlüsselwort-Einschränkung (optional): Wenn Sie ein Schlüsselwort oder eine IKN mit Format N4 angeben, werden nur Funktionen mit diesem Schlüsselwort zurückgegeben.

Im Feld `RESULT-FIELD (1:n)` erhalten Sie die angegebene Liste.

### HELP für IKN

Für eine bestimmte Interne Schlüsselwortnummer (IKN) liefert diese Option das ursprüngliche Schlüsselwort.

Kommandozeile | Inhalt
--- | ---
1 | Muss mit `IKN` anfangen.
Optionen:
A | Das interne Schlüsselwort wird gezeigt.
T | Zeigt Schlüsselwort teilweise in Großbuchstaben (um mögliche Abkürzung zu zeigen).
2 | Die zu übersetzende IKN im Format N4.

Im Feld `RESULT-FIELD (1)` erhalten Sie das Schlüsselwort.

#### Beispiel:

Eingabe: | Ausgabe:
--- | ---
    Command Line 1:    IKN
    Command Line 2:    0000002002
    Result-Field 1:    CUSTOMER

### HELP für IFN

Für eine bestimmte Interne Funktionsnummer (IFN) liefert diese Option die Schlüsselwörter einer Funktion.

Kommandozeile | Inhalt
--- | ---
1 | Muss mit `IFN` anfangen.
Option:
A | Funktionen mit internen Schlüsselwörtern werden nicht unterdrückt.
2 | Die zu übersetzende IFN im Format N10.
3 | Weitere Optionen:
S | Gibt die zu der IFN gehörenden Schlüsselwörter in `RESULT-FIELD (1:3)` zurück.
T | Zeigt Schlüsselwörter teilweise in Großbuchstaben (um mögliche Abkürzungen zu zeigen).
L | Die IFN wird zurückgegeben, wenn die IFN als Platz verwendet wird.
C | Die IFN wird zurückgegeben, wenn die IFN als Kommando verwendet wird.

Im Feld `RESULT-FIELD(1)` erhalten Sie die Funktion. Wenn Sie Option `S` verwenden, erhalten Sie die Funktion in `RESULT-FIELD (1:3)`.

#### Beispiel:

Eingabe: | Ausgabe:
--- | ---
    Command Line 1:    IFN
    Command Line 2:    0001048578
    Result-Field 1:    DISPLAY INVOICE

### TEXT für allgemeine Informationen

Bei allgemeinen Informationen muss `COMMAND−LINE (*)`, d.h. alle Kommandozeilen, leer sein. In den bis zu 9 Feldern von `RESULT-FIELD` erhalten Sie folgende Informationen:

RESULT-FIELD | Inhalt | Format
--- | --- | ---
1 | Header 1 for User Text (Kopfzeile 1 für Benutzertext) | Text (A40)
2 | Header 2 for User Text (Kopfzeile 2 für Benutzertext) | Text (A40)
3 | "First Entry used as" text (Erster Eintrag benutzt als) | Text (A16)
4 | "Second Entry used as" text (Zweiter Eintrag benutzt als) | Text (A16)
5 | "Third Entry used as" text (Dritter Eintrag benutzt als) | Text (A16)
6 | Anzahl der Eintrag-1-Schlüsselwörter. | Numerisch (N3)
7 | Anzahl der Eintrag-2-Schlüsselwörter. | Numerisch (N3)
8 | Anzahl der Eintrag-3-Schlüsselwörter. | Numerisch (N3)
9 | Anzahl katalogisierter Funktionen. | Numerisch (N7)

### TEXT für Schlüsselwort-Informationen

Bei Schlüsselwort-Informationen muss `COMMAND-LINE (1)` das betreffende Schlüsselwort enthalten; `COMMAND-LINE (2)` kann bei Bedarf den Schlüsselwort-Typ (1, 2, 3 oder P) enthalten; `COMMAND-LINE (3:6)` muss leer sein.

RESULT-FIELD | Inhalt | Format
--- | --- | ---
1 | Schlüsselwort-Kommentartext | Text (A40)
2 | Schlüsselwort in voller Länge | Text (A16)
3 | Schlüsselwort eindeutig abgekürzt | Text (A16)
4 | "Keyword used as"-Eintrag (Schlüsselwort benutzt als) | Text (A16)
5 | Interne Schlüsselwortnummer (IKN) | Numerisch (N4)
6 | Mindestlänge des Schlüsselworts | Numerisch (N2)
7 | Maximallänge des Schlüsselworts | Numerisch (N2)
8 | Schlüsselwort-Typ (1, 2, 3, 1S, 2S, 3S, P) | Text (A2)

### TEXT für Funktionsinformationen

Bei Funktionsinformationen muss `COMMAND−LINE (1:3)` die Schlüsselwörter enthalten, die den gewünschten Platz bestimmen. `COMMAND−LINE (4:6)` muss die Schlüsselwörter enthalten, die die gewünschte Funktion bestimmen. Falls beispielsweise Informationen über das globale Kommando `ADD USER` gewünscht werden, müssen die Kommandozeilen 1, 2, 3 und 6 leer sein, in Kommandozeile 4 muss `ADD` stehen und in Kommandozeile 5 `USER`.

RESULT-FIELD | Inhalt | Format
--- | --- | ---
1 | Text wie mit Option `T` in Laufzeit-Aktion definiert. | Text (A40)
2 | Interne Funktionsnummer (IFN) des angegebenen Platzes. | Numerisch (N10)
3 | Interne Funktionsnummer (IFN) der angegebenen Funktion. | Numerisch (N10)

### GET-Option

Die Option `GET` dient dazu, interne Kommando-Prozessor-Informationen und die aktuellen Kommando-Prozessor-Einstellungen aus dem dynamisch zugewiesenen `NCPWORK`-Puffer zu lesen. Folgende Felder werden verwendet:

Feldname | Inhalt
--- | ---
GETSET-FIELD-NAME (A32) | Der Name der Variablen, die gelesen werden soll.
GETSET-FIELD-VALUE (A32) | Der Wert der angegebenen Variablen nach der Ausführung von `PROCESS COMMAND ACTION GET`.

Eine Liste der möglichen Werte von `GETSET-FIELD-NAME` finden Sie weiter unten.

### SET-Option

Die Option `SET` dient dazu, interne Einstellungen des Kommando-Prozessors im `NCPWORK`-Puffer zu ändern.

Feldname | Inhalt
--- | ---
GETSET-FIELD-NAME (A32) | Der Name der Variablen, die geändert werden soll.
GETSET-FIELD-VALUE (A32) | Der Wert, der der angegebenen Variablen zugewiesen werden soll.

Die möglichen Werte von `GETSET−FIELD−NAME` sind:

Feldname | Format | G/S* | Inhalt
--- | --- | --- | ---
NAME | A8 | G | Aktueller Prozessor-Name.
LIBRARY | A8 | G | Geladen aus Library.
FNR | N10 | G | Geladen aus Datei.
DBID | N10 | G | Geladen aus Datenbank.
TIMESTMP | A8 | G | Zeitstempel des aktuellen Prozessors.
COUNTER | N10 | G | Zugriffszähler.
BUFFER-LENGTH | N10 | G | Für `NCPWORK` alloziierte Bytes.
C-DELIMITER | A1 | G/S | Delimiter für mehrere Kommandos.
DATA-DELIMITER | A1 | G | Präfix für Daten.
PF-KEY | A1 | G/S | PF-Taste kann Kommando sein (Y/N).
UPPER-CASE | A1 | G | Schlüsselwörter in Großbuchstaben (Y/N).
UQ-KEYWORDS | A1 | G | Eindeutige Schlüsselwörter (Y/N).
IMPLICIT-KEYWORD | A1 | G/S | Identifiziert impliziten Schlüsselwort-Eintrag.
MIN-LEN | N10 | G | Schlüsselwort-Mindestlänge.
MAX-LEN | N10 | G | Schlüsselwort-Maximallänge.
KEYWORD-SEQ | A8 | G/S | Schlüsselwort-Reihenfolge.
ALT-KEYWORD-SEQ | A8 | G/S | Alternative Schlüsselwort-Reihenfolge.
USER-SEQUENCE | A1 | G | Benutzer darf `KEYWORD−SEQ` überschreiben (Y/N).
CURR-LOCATION | N10 | G/S | Aktueller Platz (IFN).
CURR-IKN1 | N10 | G/S | IKN1 des aktuellen Platzes.
CURR-IKN2 | N10 | G/S | IKN2 des aktuellen Platzes.
CURR-IKN3 | N10 | G/S | IKN3 des aktuellen Platzes.
CHECK-LOCATION | N10 | G | Letzter geprüfter Platz (IFN).
CHECK-IKN1 | N10 | G | IKN1 von `CHECK-LOCATION`.
CHECK-IKN2 | N10 | G | IKN2 von `CHECK-LOCATION`.
CHECK-IKN3 | N10 | G | IKN3 von `CHECK-LOCATION`.
TOP-IKN1 | N10 | G | IKN1 des obersten Schlüsselworts.
TOP-IKN2 | N10 | G | IKN2 des obersten Schlüsselworts.
TOP-IKN3 | N10 | G | IKN3 des obersten Schlüsselworts.
KEY1-TOTAL | N10 | G | Anzahl an Schlüsselwörtern vom Typ 1.
KEY2-TOTAL | N10 | G | Anzahl an Schlüsselwörtern vom Typ 2.
KEY3-TOTAL | N10 | G | Anzahl an Schlüsselwörtern vom Typ 3.
FUNCTIONS-TOTAL | N10 | G | Anzahl der katalogisierten Funktionen.
LOCAL-GLOBAL-SEQ | A8 | G/S | Lokale/globale Funktionsvalidierung.
ERROR-HANDLER | A8 | G/S | Allgemeines Fehlerprogramm.
SECURITY | A1 | G | Natural Security installiert (`Y/N`).
SEC-PREFETCH | A1 | G | Natural Security-Daten sollen gelesen werden (`Y/N`) bzw. wurden gelesen (`D` = Done/erledigt).
PREFIX1 | A1 | G | Entspricht dem Feld `Prefix Character 1` des Schirms Processor Header Maintenance 2 der `SYSNCP`-Utility, siehe Abschnitt Keyword Editor Options - Header 2
PREFIX2 | A1 | G | Entspricht dem Feld `Prefix Character 2` des Schirms Processor Header Maintenance 2 der `SYSNCP`-Utility.
HEX1 | A1 | G | Entspricht dem Feld `Hex. Replacement 1` des Schirms Processor Header Maintenance 2 der `SYSNCP`-Utility.
HEX2 | A1 | G | Entspricht dem Feld `Hex. Replacement 2` des Schirms Processor Header Maintenance 2.
DYNAMIC | A32 | G | Dynamischer Teil `(:n:)` der letzten Fehlermeldung.
LAST | - | G | Letztes oben auf dem Natural-Stack als Daten abgelegtes Kommando.
LAST-ALL | - | G | Letzte oben auf dem Natural-Stack als Daten abgelegte Kommandos.
LAST-COM | - | G | Letztes in `*COM` gestelltes Kommando.
MULTI | - | G | Legt das letzte von mehreren Kommandos als Daten oben auf dem Natural-Stack ab.
MULTI-COM | - | G | Legt das letzte von mehreren Kommandos in der Systemvariablen `*COM` ab.

*G = Kann mit der `GET`-Option verwendet werden.

*S = Kann mit der `SET`-Option verwendet werden.

### USING-Klausel

Die Inhalte der Felder in der `USING`-Klausel bestimmen zum Beispiel den Prozessor-Namen und die Kommandozeile.

In der `USING`-Klausel werden die Felder angegeben, die an den Kommando-Prozessor übergeben werden.

Option | Feldname
--- | ---
PROCESSOR-NAME | COMMAND-LINE | GETSET-FIELD-NAME | GETSET-FIELD-VALUE
CLOSE |  |  |  |
CHECK | M | M |  |
EXEC | M | M |  |
TEXT | M | M |  |
HELP | M | M |  |
GET | M |  | M |
SET | M |  | M | M

M = Feld muss angegeben werden.

R = Feld sollte angegeben werden (muss aber nicht).

### GIVING-Klausel

Anmerkung
Diese Klausel kann nur im Reporting Mode verwendet werden.

In der `GIVING`-Klausel werden die Felder angegeben, die vom Kommando-Prozessor gefüllt werden, wenn eine Option verarbeitet wird.

Option | Feldname
--- | ---
NATURAL-ERROR | RETURN-CODE | RESULT-FIELD | GETSET-FIELD-VALUE
CLOSE | R |  |  |
CHECK | R | M | M |
EXEC | R | M | M |
TEXT | R | M | M |
HELP | R | M | M |
GET | R |  |  | M
SET | R |  |  |

M = Feld muss angegeben werden.

R = Feld sollte angegeben werden (muss aber nicht).

Anmerkung
Die `GIVING`-Klausel kann im Structured Mode nicht verwendet werden, da es eine implizite `GIVING`-Klausel gibt, die sich aus allen im `DEFINE DATA`-Statement angegebenen Feldern zusammensetzt, die für gewöhnlich in der `GIVING`-Klausel des Reporting Modes referenziert werden. Das bedeutet, dass im Structured Mode alle in obiger Tabelle mit `M` markierten Felder im `DEFINE DATA`-Statement definiert sein müssen.

## Das DDM COMMAND

Das DDM `COMMAND` wurde speziell zur Verwendung mit dem `PROCESS COMMAND`-Statement erstellt:

     DB:    1 File:    1 - COMMAND                          Default Sequence: ?

      TYL  DB  NAME                             F LENG  S D   REMARKS
      ---  --  -------------------------------- - ----  - -  ------------------------
        1  AA  PROCESSOR-NAME                   A    8  N D DE    USING
      M 1  AB  COMMAND-LINE                     A   80  N D MU/DE USING
        1  AF  GETSET-FIELD-NAME                A   32  N D DE    USING
        1  BA  NATURAL-ERROR                    N  4.0  N         GIVING
        1  BB  RETURN-CODE                      A    4  N         GIVING
      M 1  BC  RESULT-FIELD                     A   80  N   MU    GIVING
        1  BD  GETSET-FIELD-VALUE               A   32  N D       USING; GIVING
      ***** DDM OUTPUT TERMINATED ******

Anmerkung
Um mögliche Kompilierungs- bzw. Laufzeitfehler zu vermeiden, prüfen Sie bitte, ob das DDM `COMMAND` als Typ `C` (Feld `DDM Type` auf dem `SYSDDM`-Menü) katalogisiert ist, bevor Sie es verwenden. (Falls Sie es neu katalogisieren, werden hierbei etwaige DBID/FNR-Angaben in `SYSDDM` ignoriert.)

Das DDM `COMMAND` enthält folgende Felder:

DDM-Feld | Erläuterung
--- | ---
PROCESSOR-NAME | Der Name des Kommando-Prozessors, für den das `PROCESS COMMAND`-Statement ausgeführt wird. Der Prozessor muss katalogisiert sein.
COMMAND-LINE | Die Kommandozeile, die vom Kommando-Prozessor verarbeitet werden soll (Optionen `CHECK`, `EXEC`) bzw. das Schlüsselwort/Kommando, für das Benutzertext oder Hilfe-Text an das Programm zurückgegeben werden soll (Optionen `TEXT`, `HELP`). Bitte beachten Sie, dass dieses Feld aus mehr als einer Zeile bestehen kann.
GETSET-FIELD-NAME | Dieses Feld wird mit den Optionen `GET` und `SET` verwendet und dient zur Angabe des Namens der Konstanten/Variablen, die gelesen (`GET`) oder geschrieben (`SET`) werden soll.
RETURN-CODE | Dieses Feld enthält den Return Code einer Aktion aufgrund der Option `EXEC` oder `CHECK`, wie in einer Laufzeit-Aktion angegeben (siehe SYSNCP-Utility).
NATURAL-ERROR | Dieses Feld wird mit allen Optionen verwendet. Wenn es im `DEFINE DATA`-Statement angegeben wird, enthält es den Natural-Fehlercode für den Kommando-Prozessor. Wenn das Feld fehlt, ist die normale Natural-Fehlerbehandlung aktiv, wenn ein Fehler auftritt.
RESULT-FIELD | Dieses Feld enthält Informationen, die aus der Verwendung verschiedener Optionen, wie in einer Laufzeit-Aktion angegeben, resultieren (siehe den Abschnitt Runtime Actions in der SYSNCP-Utility-Dokumentation). Bitte beachten Sie, dass dieses Feld aus mehr als einer Zeile bestehen kann.
GETSET-FIELD-VALUE | Dieses Feld wird mit den Optionen `GET` und `SET` verwendet und enthält den Wert der im Feld `GETSET-FIELD-NAME` angegebenen Konstanten/Variablen (siehe oben).

## Beispiele

- Beispiel 1 — PROCESS COMMAND ACTION CLOSE

- Beispiel 2 — PROCESS COMMAND ACTION EXEC2

### Beispiel 1 — PROCESS COMMAND ACTION CLOSE

    /* EXAM-CLS - Example for PROCESS COMMAND ACTION CLOSE (Structured Mode)
    /***********************************************************************
    DEFINE DATA LOCAL
      01 COMMAND VIEW OF COMMAND
    END-DEFINE
    /*
    PROCESS COMMAND ACTION CLOSE
    /*
    DEFINE WINDOW CLS
    INPUT WINDOW = 'CLS'
      'NCPWORK has just been released.'
    /*
    END

### Beispiel 2 — PROCESS COMMAND ACTION EXEC2

    /* EXAM-EXS - Example for PROCESS COMMAND ACTION EXEC (Structured Mode)
    /**********************************************************************
    DEFINE DATA LOCAL
      01 COMMAND VIEW OF COMMAND
         02 PROCESSOR-NAME
         02 COMMAND-LINE (1)
         02 NATURAL-ERROR
         02 RETURN-CODE
         02 RESULT-FIELD (1)
      01 MSG (A65) INIT <'Please enter a command.'>
    END-DEFINE
    /*
    REPEAT
      INPUT (AD=MIT' ' IP=OFF) WITH TEXT MSG
        'Example for PROCESS COMMAND ACTION EXEC (Structured Mode)' (I)
      / 'Command ==>' COMMAND-LINE (1) (AL=64)
      /*******
     PROCESS COMMAND ACTION EXEC
        USING
          PROCESSOR-NAME = 'DEMO'
          COMMAND-LINE (1) = COMMAND-LINE (1)
      /*******
      COMPRESS 'NATURAL-ERROR =' NATURAL-ERROR TO MSG
    END-REPEAT
    END

Anmerkung
Weitere Beispielprogramme finden Sie in der Library `SYSNCP`. Die Namen der Beispielprogramme beginnen alle mit `EXAM`.

### On this page

- Funktion
- Syntax-Beschreibung
- Das DDM COMMAND
- Beispiele