Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Einschränkungen bei der Umwandlung zu S-Prozeduren

&pagelevel(4)&pagelevel
  • ENTER-Dateien können mit SDF-CONV nicht in S-Prozeduren umgewandelt werden.

  • SDF-CONV gibt eine Fehlermeldung aus, wenn der Name eines Prozedurparameters länger als 20 Zeichen ist. Namen von Prozedurparametern dürfen in Nicht-S-Prozeduren max. 255 Zeichen lang sein, während in S-Prozeduren nur max. 20 Zeichen zugelassen sind.
    Diese Einschränkung gilt nicht für Stellungsoperanden, da diese bei Bedarf von SDF-CONV automatisch gekürzt werden.

  • Bei der Umwandlung kann sich die Steuerung der Protokollierung ändern. Bei Nicht-S-Prozeduren wird die Protokollierung nur von der aufgerufenen Prozedur bestimmt, bei S-Prozeduren zusätzlich von der Einstellung, die die aufrufende Umgebung hat.

  • Es findet keine Umwandlung statt, wenn der Wert eines Prozedurparameters mehrere zu ersetzende Jobvariablen enthält.

  • Ist in der Nicht-S-Eingabeprozedur das erste signifikante Zeichen nach einem Kommandonamen das Gleichheitszeichen, gibt SDF-CONV eine WARNING aus. Eine Ausnahme bilden Kommandosätze mit dem REMARK-Kommando.

  • Die zweistufige Ersetzung von Prozedurparametern wird von SDF-P nicht unterstützt.

  • Prozedurparameter und Jobvariablen in S-Prozeduren können innerhalb der einschließenden Klammer weitere zu ersetzende Ausdrücke enthalten, z.B.
    &(JOBVAR1&(JOBVAR2)). Diese Eigenschaft wird von SDF-CONV nicht unterstützt.

    Beispiel

    1. Nicht-S-Prozedur:

      /BEGIN-PROC A,PAR=YES(PROC-PAR=(&TEST=))
      /MOD-JV JV(JV-NAME=JOBVAR),VALUE=’&&TEST’
      /SHO-JV JV(JV-NAME=JOBVAR)
      /REMARK &TEST
      /WR-TEXT ’&(JOBVAR)’
      /EXIT-PROC
      

      Ablaufprotokoll der Nicht-S-Prozedur:

      /CALL-PROC BSP-NICHT-S
      %/BEGIN-PROC A,PAR=YES(PROC-PAR=(&TEST=))
      %/MOD-JV JV(JV-NAME=JOBVAR),VALUE=’&TEST’
      %/SHO-JV JV(JV-NAME=JOBVAR)
      %&TEST
      %/REMARK &TEST
      %&TEST=hallo
      %/REMARK HALLO
      %/WR-TEXT ’HALLO’
      HALLO
      %/EXIT-PROC
      

      Die Jobvariable JOBVAR wurde zweistufig ersetzt.
      Der Inhalt der Jobvariablen JOBVAR ist der Wert des Prozedurparameters TEST, also HALLO.

    2. S-Prozedur:

      /SET-PROC-OPTIONS LOG=YES
      /BEGIN-PAR-DEC
      /DECLARE-PAR NAME=TEST (INIT=*PROMPT)
      /END-PAR-DEC
      /MOD-JV JV(JV-NAME=JOBVAR),VALUE=’&&TEST’
      /SHO-JV JV(JV-NAME=JOBVAR)
      /REMARK &TEST
      /WR-TEXT ’&(JV(’JOBVAR’))’
      

      Ablaufprotokoll der S-Prozedur:

      /CALL-PROC BSP-S,LOG=YES
      %  1  1 /SET-PROCEDURE-OPTIONS LOGGING-ALLOWED=YES,INTERRUPT%
        ALLOWED=YES,DATA-ESCAPE-CHAR=NONE,SYSTEM-FILE-CONTEXT=OWN,%
        DATA-ERROR-HANDLING=NO
      %  1  1 /BEGIN-PARAMETER-DECLARATION
      %  1  1 /DECLARE-PARAMETER NAME=TEST,TYPE=ANY,INIT=*PROMPT
      %  1  1 /END-PARAMETER-DECLARATION
      %  6  1 /MOD-JV JV(JV-NAME=JOBVAR),VALUE=’&TEST’
      %  7  1 /SHOW-JV JV(JV-NAME=JOBVAR)
      %&TEST
      %TEST: hallo
      %  8  1 /REMARK ’HALLO’
      %  9  1 /WRITE-TEXT ’&TEST’
      &TEST
      % 11  1 /IF-BLOCK-ERROR
      % 11  1 /END-IF
      % 11  1 /EXIT-PROCEDURE
      

      Die Jobvariable JOBVAR wurde nur einmal ersetzt.
      Der Inhalt der Jobvariablen JOBVAR ist &TEST.