Anwendungsgebiet: Prozedurinformationen
Die Funktion STMT-SPINOFF( ) zeigt an, ob für das geladene Programm ein Statement-Spinoff eingeschaltet ist.
Ein Statement-Spinoff wird ausgelöst, wenn in einem Programm SDF-Anweisungen von der Systemdatei SYSSTMT gelesen werden (Read Statement mit dem Makroaufruf CMDRST bzw. RDSTMT, siehe Handbuch „SDF-A“ [16]) und dabei Fehler auftreten. Auf Anweisungsebene kann das Statement-Spinoff durch die Anweisung //STEP abgefangen werden. Auf Kommando-Ebene ist die Funktion STMT-SPINOFF( ) die einzige Möglichkeit, ein Statement-Spinoff abzufragen.
Hinweis
Innerhalb von Kommandoblöcken, in denen Returncodes von Programmanweisungen wie Kommando-Returncodes interpretiert werden (siehe Kommando BEGIN-BLOCK, Operand PROGRAM-INPUT=*MIXED-WITH-CMD(PROPAGATE-STMT-RC=*TO-CMD-RC)), ist die Verwendung dieser Funktion nutzlos: Es wird niemals der Wert YES zurückgegeben, weil bei der Returncode-Verarbeitung nicht zwischen Anweisungen und Kommandos unterschieden wird.
Format
STMT-SPINOFF( ) |
Ergebnistyp
STRING (YES / NO / UNDEFINED)
Eingabeparameter
Keine
Ergebnis
YES
Für das geladene Programm ist ein Statement-Spinoff ausgelöst worden.
NO
Für das geladene Programm ist kein Statement-Spinoff ausgelöst worden.
UNDEFINED
Es ist kein Programm geladen.
Fehlermeldung
SDP0435 GEWUENSCHTE INFORMATION NICHT VERFUEGBAR
Beispiel
Die folgende Prozedur startet das Programm SDF-A und öffnet eine Syntaxdatei unbekannten Typs zum Lesen.
/DECLARE-PARAMETER NAME=SYNTAX-FILE(INITIAL-VALUE=*PROMPT) /BEGIN-BLOCK PROGRAM-INPUT=*MIXED-WITH-CMD / START-SDF-A // OPEN-SYNTAX-FILE &(SYNTAX-FILE),TYPE=SYSTEM,MODE=READ / IF (STMT-SPINOFF='YES') // STEP // OPEN-SYNTAX-FILE &(SYNTAX-FILE),TYPE=GROUP(*NO),MODE=READ / IF (STMT-SPINOFF='YES') // STEP // OPEN-SYNTAX-FILE &(SYNTAX-FILE),TYPE=USER(*NO, *NO),MODE=READ / END-IF / END-IF // SHOW-STATUS / EXIT-PROCEDURE RESUME-PROGRAM=*YES /END-BLOCK