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:

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 Kommandoprozessor 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 Schlüsselwort COMMAND im Statement PROCESS COMMAND ist eigentlich der Name einer Natural-View (Datenbanksicht). Der Name der verwendeten View muss nicht unbedingt COMMAND sein, aber wir empfehlen die Verwendung von COMMAND, weil ein Datendefinitionsmodul (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 Kommandoprozessor 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. unterbunden werden.

Weitere Informationen siehe Functional Security in der 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 Kommandoprozessors und gibt den Kommandoprozessor-Puffer wieder frei.

Wenn der Kommandoprozessor 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 Kommandoprozessors 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 Kommandoprozessor-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 (Datenbanksicht) 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 so viele 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:

Anmerkung:
Im Hinblick auf optimale Verarbeitungszeit sollte das Feld RESULT-FIELD nicht mehr Ausprägungen haben als Zeilen auf dem Bildschirm 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 Kommandoprozessors mit der SYSNCP Utility im Keyword Editor oder Action Editor eingegeben wurde.

Weitere Informationen siehe die folgenden Abschnitte:

Anmerkung:
Um auf Text zu Schlüsselwörtern oder Funktionen zugreifen zu können, muss im Feld Catalog User Texts auf dem Bildschirm Processor Header Maintenance 3 des Dienstprogramms SYSNCP ein Y (ja) eingetragen sein, siehe Abschnitt Verschiedene Optionen - 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 des Typs 1
2 Schlüsselwörter des Typs 2
3 Schlüsselwörter des Typs 3
P Schlüsselwörter des Typs 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 der Typen 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 des Typs 1 enthalten, werden zurückgegeben.
2 Nur Funktionen, die das angegebene Schlüsselwort des Typs 2 enthalten, werden zurückgegeben.
3 Nur Funktionen, die das angegebene Schlüsselwort des Typs 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 des Typs 1 enthalten, werden zurückgegeben.
2 Nur Funktionen, die das angegebene Schlüsselwort des Typs 2 enthalten, werden zurückgegeben.
3 Nur Funktionen, die das angegebene Schlüsselwort des Typs 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 Kommandoprozessors 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 Kommandoprozessor-Informationen und die aktuellen Kommandoprozessor-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 Kommandoprozessors 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 des Typs 1.
KEY2-TOTAL N10 G Anzahl an Schlüsselwörtern des Typs 2.
KEY3-TOTAL N10 G Anzahl an Schlüsselwörtern des Typs 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 Bildschirms Processor Header Maintenance 2 der SYSNCP-Utility, siehe Abschnitt Keyword Editor-Optionen - Header 2
PREFIX2 A1 G Entspricht dem Feld Prefix Character 2 des Bildschirms Processor Header Maintenance 2 der SYSNCP-Utility.
HEX1 A1 G Entspricht dem Feld Hex. Replacement 1 des Bildschirms Processor Header Maintenance 2 der SYSNCP-Utility.
HEX2 A1 G Entspricht dem Feld Hex. Replacement 2 des Bildschirms 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 Kommandoprozessor ü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 Kommandoprozessor 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 Kommandoprozessors, für den das PROCESS COMMAND-Statement ausgeführt wird. Der Prozessor muss katalogisiert sein.
COMMAND-LINE Die Kommandozeile, die vom Kommandoprozessor 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 Dienstprogramm (Utility) SYSNCP).
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 Kommandoprozessor. 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 Laufzeit-Aktionen in der SYSNCP--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

/* 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.