Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Beispiel 3

&pagelevel(4)&pagelevel

Die Prozedur PROC.ASSXT ist eine kleine Hilfsprozedur, die bei der häufigen Nutzung des ASSEMBH-Assemblers ein schnelleres Abarbeiten (Zuweisung von Systemdateien, Aufruf des Assemblers) ermöglichen soll. Sie ist in SDF-Kommandosprache geschrieben. Die Umwandlung dieser Nicht-S-Prozedur in eine S-Prozedur erfolgt ohne Einschränkungen.

Eingabeprozedur PROC.ASSXT

/BEGIN-PROC A,P-P=(&FILE),ESC-CHAR='&'
/REMARK **** Aufruf des ASSEMBH ****
/DEL-FI LST.ASSEMBH
/SET-JOB-STEP
/ASS-SYSDTA *SYSCMD
/DEL-SYS-FI "von frueheren ASSEMBH-Aufrufen" *OMF
/START-PROG $ASSEMBH
//COMPILE SOURCE=&FILE,LISTING=PAR(OUTPUT=LST.ASSEMBH),-
//TEST-SUPPORT=YES
//END
/SET-JOB-STEP
/ASS-SYSDTA *P
/END-PROC

SDF-CONV-Ablauf

/start-sdf-conv ———————————————————————————————————————————————————————  (1) 
%  BLS0517 MODULE 'CVRMAIN' LOADED
%  CVR0001 SDF-CONV VERSION 'V03.0B80' STARTED
%  CVR0060 SDF-CONV VERSION 'V03.0B80' READY
//convert from-file=proc.assxt,to-file=sdfp.proc.assxt,doc=*min,- —————  (2)
//procedure-format=*s-proc(prog-inp=*data)
%  CVR1000 CONVERSION TERMINATED WITH:
%  CVR1001            FAILURES:    0
%  CVR1002            ERRORS  :    0
%  CVR1003            WARNINGS:    0
%  CVR1004            NOTES   :    0
//end —————————————————————————————————————————————————————————————————  (3)

(1)

Start des Dienstprogramms SDF-CONV.

(2)

In der CONVERT-Anweisung wird die Ein- und Ausgabeprozedur zugewiesen sowie die Dokumentationsmenge bestimmt. Die Prozedur soll in eine S-Prozedur umgewandelt werden. Alle anderen Operanden der CONVERT-Anweisung behalten den Standardwert. Nach erfolgter Abarbeitung meldet SDF-CONV, dass die Umwandlung ohne Warnungen oder Fehler durchgeführt wurde. Diese Übersicht wird nach SYSOUT ausgegeben.

(3)

Mit der Anweisung END wird SDF-CONV beendet.

Ablaufprotokoll (SYSLST)

      ***** BS2000 COMMAND  CONVERTER : SDF-CONV V3 *****         page 1 
%  CVR1010 OPTIONS IN EFFECT: —————————————————————————————————————————  (1) 
%  CVR1011         FROM-FILE            = PROC.ASSXT
%  CVR1012         EXPECT-CONTINUATION  = *NEW-MODE
%  CVR1013         PARAMETER-LINES      = *CONVERT
%  CVR1014         TO-FILE              = SDFP.PROC.ASSXT
%  CVR1015         PRODUCE-CONTINUATION = *NEW-MODE
%  CVR1016         REPLACE-OLD-FILE     = *YES
%  CVR1017         SYSTEM-SYNTAX-FILE   = $.SYSSDF.SDF-CONV.030.USER.U-CMD
%  CVR1018         GROUP-SYNTAX-FILE    = $.SYSSDF.SDF-CONV.030.USER.S-CMD
%  CVR1019         UNCHANGED-CMD        = *NONE
%  CVR1020         DOCUMENTATION        = *MINIMUM
%  CVR1021         TARGET-VERSION       = *OSD-V2
%  CVR1022         OUTPUT-FORM          = *STD
%  CVR1023         PROCEDURE-FORMAT     = *S-PROCEDURE(CMD-
FORMAT=*SDF,PROGRAM-INPUT=*DATA(EXCEPT-AFTER-CMD=*NONE,WARNING=*NO),BLOCK-
INPUT=*NOT-ALLOWED)
      ***** BS2000 COMMAND  CONVERTER : SDF-CONV V3 *****         page 2 
  /BEGIN-PROC A,P-P=(&FILE),ESC-CHAR='&' ——————————————————————————————  (2) 
 /REMARK **** Aufruf des ASSEMBH **** 
 /DEL-FI LST.ASSEMBH 
 /SET-JOB-STEP 
 /ASS-SYSDTA *SYSCMD 
 /DEL-SYS-FI "von frueheren ASSEMBH-Aufrufen" *OMF 
 /START-PROG $ASSEMBH 
 //COMPILE SOURCE=&FILE,LISTING=PAR(OUTPUT=LST.ASSEMBH),- 
 //TEST-SUPPORT=YES 
 //END 
 /SET-JOB-STEP 
 /ASS-SYSDTA *P 
 /END-PROC 
%  CVR1000 CONVERSION TERMINATED WITH: ————————————————————————————————  (3) 
%  CVR1001            FAILURES:    0
%  CVR1002            ERRORS  :    0
%  CVR1003            WARNINGS:    0
%  CVR1004            NOTES   :    0

(1)

Es werden die für den durchgeführten SDF-CONV-Lauf eingestellten Operandenwerte ausgegeben.

(2)

Ausgabe aller Kommandosätze der Eingabeprozedur.

(3)

Der letzte Teil des Protokolls ist identisch mit der Ausgabe nach SYSOUT.

Ausgabeprozedur SDFP.PROC.ASSXT

/SET-PROCEDURE-OPTIONS LOGGING-ALLOWED=YES,INTERRUPT-ALLOWED=YES,-
/     DATA-ESCAPE-CHAR=STD,SYSTEM-FILE-CONTEXT=OWN,DATA-ERROR-HANDLING=-
/     NO
/BEGIN-PARAMETER-DECLARATION
/DECLARE-PARAMETER NAME=FILE,TYPE=ANY,INIT=*PROMPT
/END-PARAMETER-DECLARATION
/REMARK '**** AUFRUF DES ASSEMBH ****'
/DELETE-FILE LST.ASSEMBH
/SET-JOB-STEP
/ASSIGN-SYSDTA TO=*SYSCMD
/"*****" REMARK '/DEL-SYS-FI "von frueheren ASSEMBH-Aufrufen" *OMF' ———  (1) 
/DELETE-SYSTEM-FILE "von frueheren ASSEMBH-Aufrufen" *OMF
/START-PROGRAM $ASSEMBH
//COMPILE SOURCE=&(FILE),LISTING=PAR(OUTPUT=LST.ASSEMBH),TEST-SUPPORT=-
//     YES
//END
/SET-JOB-STEP
/ASSIGN-SYSDTA TO=*P
/IF-BLOCK-ERROR;END-IF
/END-PROCEDURE

(1)

Der Kommandosatz mit dem Inline-Kommentar wird in eine Kommentarzeile geschrieben, die vor der Kommandozeile mit der Übersetzung steht. Dadurch ist gewährleistet, dass die Information des Inline-Kommentars bei der Übersetzung nicht verloren geht (Voraussetzung: DOCUMENTATION=*MIN/*MAX).