Bei der Eingabe von Kommandos und Anweisungen ist Folgendes zu beachten:
Eingaben werden von SDF gemäß der Standard-Codetabelle EBCDIC.DF.03 interpretiert (z.B. bei der Umsetzung Groß-/Kleinschreibung).
Bei Einsatz von XHCS können erweiterte Zeichensätze (CCS, Coded Character Set) verwendet werden. Die Codierung der Zeichen Dollar ($), Nummernzeichen (#), Klammeraffe (@), Ausrufezeichen (!), Zirkumflex (^), runde und eckige Klammern, Größer- und Kleinerzeichen, Stern (*), Schrägstrich (/), Doppelpunkt, Komma, Semikolon, Hochkomma und Anführungszeichen darf in einem erweiterten Zeichensatz nicht von der Codierung der Standard-Codetabelle abweichen.
Zusätzliche Zeichen aus einem erweiterten Zeichensatz werden von SDF nur innerhalb der Datentypen <c-string> und <text> ausgewertet, d.h. zur Umsetzung von Groß-/Kleinschreibung wird eine von XHCS für den erweiterten Zeichensatz bereitgestellte Codetabelle verwendet.
Zusätzliche Zeichen innerhalb der anderen Datentypen werden mit Syntaxfehler abgewiesen.
Bei der Verwendung eines erweiterten Zeichensatzes sind folgende Fälle zu unterscheiden:
- Eingabe von der Datensichtstation:
Bei der Eingabe von Kommandos wird das CCS aus dem Benutzereintrag verwendet, wenn mit dem Kommando MODIFY-TERMINAL-OPTIONS der 8-Bit-Modus eingeschaltet wurde.
Bei der Eingabe von Anweisungen wird das CCS verwendet, das im jeweiligen Makroaufruf (CMDRST bzw. RDSTMT, CMDTST bzw. TRSTMT oder CMDCST bzw. CORSTMT) angegeben wurde. Wurde kein CCS angegeben, wird das CCS wie bei der Eingabe von Kommandos verwendet.
- Eingabe aus Datei oder PLAM-Bibliothekselement:
Bei der Eingabe von Kommandos wird das CCS der Eingabedatei bzw. der PLAM-Bibliothek verwendet. Das CCS des PLAM-Bibliothekselements wird verwendet, wenn SYSDTA mit dem Kommando ASSIGN-SYSDTA zugewiesen wurde. Bei der Eingabe von Anweisungen muss das im jeweiligen Makroaufruf angegebene CCS mit dem CCS für SYSDTA-Eingaben übereinstimmen, sonst wird die Anweisung abgewiesen.
Während einer Prozedurunterbrechung wird das CCS verwendet, das für die Eingabe von der Datensichtstation eingestellt ist.
- Eingabe aus einer S-Variablen:
Ist SYSDTA einer zusammengesetzten S-Variablen zugewiesen, wird im Dialogbetrieb das CCS verwendet, das für die Eingabe von der Datensichtstation eingestellt ist. Im Batchbetrieb wird das CCS EDF03IRV verwendet.
- In den Makroaufrufen CMD und TRCMD werden erweiterte Zeichen nicht unterstützt.
Erstes Zeichen einer Kommandoeingabe ist der Schrägstrich „/“; vor einer Anweisung stehen zwei Schrägstriche „//“.
Bei Eingabe von der Datensichtstation werden diese Kennzeichen als Eingabeaufforderung vom System vorgegeben. Bei der Eingabe aus Prozedurdateien müssen diese Kennzeichen in den Eingabesätzen enthalten sein.Zwischen Schrägstrich und dem Kommandonamen kann eine Marke stehen. Sie kennzeichnet die Kommandozeile als Sprungziel innerhalb von Prozeduren. Mindestens ein Leerzeichen trennt die Marke von dem Kommandonamen. Eine Marke hat in S- und Nicht-S-Prozeduren unterschiedliche Formate:
- Die S-Marke besteht aus einem bis zu 255 Zeichen langem Namen (entspricht <structured-name 1..255>), dem ein Doppelpunkt folgt. S-Marken gehören nicht zum Kommando. Sie werden nur von SDF-P ausgewertet und können nur in S-Prozeduren verwendet werden.
- Die Nicht-S-Marke besteht aus einem führenden Punkt und aus einem bis zu acht Zeichen langen Namen (entspricht <name 1..8>).
Der Kommando- bzw. Anweisungsname wird von nachfolgenden Operanden mit mindestens einem Leerzeichen getrennt.
Ein Operand wird vom nächsten Operanden mit einem Komma getrennt.
Operandenwerte innerhalb einer Liste werden mit einem Komma getrennt. Wird mehr als ein Listenelement angegeben, so ist die Aufzählung in runde Klammern einzuschließen.
Operanden können entweder als Schlüsselwortoperanden angegeben werden oder als Stellungsoperanden. Bei der Angabe als Schlüsselwortoperand wird dem Operandennamen mit einem Gleichheitszeichen der Operandenwert zugeordnet. Bei der Angabe als Stellungsoperand wird nur der Operandenwert angegeben. Der Operand wird dann über die relative Position des Wertes innerhalb der Eingabe zugeordnet (siehe "Stellungsoperanden angeben").
Weitere Leerzeichen zwischen Schlüsselwörtern, variablen Operandenwerten, Kommata und Gleichheitszeichen sind zu Dokumentationszwecken möglich und werden ignoriert.
Zeichenfolgen, die in Anführungszeichen eingeschlossen sind, werden als Kommentare interpretiert und ignoriert. Kommentare können wie weitere Leerzeichen verwendet werden, vor Marken sind sie jedoch nicht erlaubt.
Zeilenende-Kommentar:
In S-Prozeduren leitet die Zeichenfolge &* einen Zeilenende-Kommentar ein, d.h. alle nachfolgenden Zeichen bis zum Zeilenende werden ignoriert. Insbesondere werden Fortsetzungszeichen, Semikolon und &-Ausdrücke ignoriert.Fortsetzungszeilen:
Ein Bindestrich als letztes Zeichen eines Eingabesatzes bzw. auch mit nachfolgenden Leerzeichen wird als Fortsetzungszeichen interpretiert. Die Folgezeile ist die Fortsetzungszeile des begonnenen Kommandos bzw. der Anweisung.
Bei Eingabe von der Datensichtstation fordert das System mit „/“ bzw. „//“ zur Fortsetzung der Eingabe auf. Bei Eingabe aus Prozedur- oder ENTER-Dateien muss die Fortsetzungszeile mit „/” bzw. „//“ beginnen.
Das Fortsetzungszeichen für Kommandos muss innerhalb der Spalten 2 und 72 stehen, wenn CONTINUATION=*NEW-MODE eingestellt ist (siehe SHOW-SDF-OPTIONS bzw. MODIFY-SDF-OPTIONS). Mit CONTINUATION=*OLD-MODE muss das Fortsetzungszeichen genau auf Spalte 72 stehen.
Auf Spalte 72 nachfolgende Zeichen werden ignoriert.
Die Gesamtlänge eines Kommandos (mit seinen Folgezeilen) beträgt 16364 Byte einschließlich Leerzeichen und Kommentaren. Für die noch unterstützten ISP-Kommandos beträgt die Gesamtlänge 4096 Byte.Eingabesätze für eine Anweisung können länger als 72 Zeichen sein, wobei das Fortsetzungszeichen ab Spalte 2 angegeben werden kann. Die Länge einer Anweisung kann maximal 16364 Byte betragen.
Bei Eingabe von der Dialogstation ist die Länge der Eingabesätze und die Position eines Fortsetzungszeichens nur von der Größe des Eingabepuffers der Dialogstation abhängig, sie beträgt jedoch maximal 16364 Byte.
In S-Prozeduren kann mit dem Kommando SET-PROCEDURE-OPTIONS INPUT-FORMAT=*FREE-RECORD-LENGTH die Länge eines Eingabesatzes unter Berücksichtigung der Maximallänge von 16364 Byte frei vereinbart werden. Ein Fortsetzungszeichen kann ab Spalte 2 angegeben werden.
Bei Eingabe aus Nicht-S-Prozedur- bzw. ENTER-Dateien müssen Schlüsselwörter groß geschrieben werden. Dies gilt auch für Werte von Prozedurparametern, S-Variablen und Jobvariablen, wenn sie Teile von Kommandos bzw. Anweisungen ersetzen sollen.
Bei Verwendung eines Strichpunkts zwischen zwei Kommandos können innerhalb eines Eingabesatzes (einschl. Folgezeilen) mehrere Kommandos angegeben werden. Diese Eingabemöglichkeit ist nur im Dialog und innerhalb von S-Prozeduren erlaubt.