User Exit Before Submission to Enterprise Server/JCL

Introduction

If needed, the JCL file specified in the MFBSIJCL command can be edited before submission to JCL. This allows for any parameters substitution or additional site specific checking.

The parameter JCLExit in mfbsi.cfg specifies the name of the user exit module to be called. Use the mfbsiue1.cpy interface shown:

      *    -- copybook "MFBSIUE1" --

       01  ES-UserExit-JCLsubmit.
      **>  MFBSIJCL exit's common area
           05  ES-UE-CommonArea            pic x(1024).
      **>  Input parameters
           *>  OS Environment
           05  ESue1-OS                    pic x(1).
               88 ESue1-Windows              value '0'.
               88 ESue1-UNIX                 value '1'.
           *>  SJOBID
           05  ESue1-Scheduler-Job-ID      pic x(16).
           *>  User exit identifier
           05  ESue1-JCLexitID             pic x(32).
           *>  Execution mode: submit JCL or JOB restart
           05  ESue1-ExecutionMode         pic x(01).
               88  ESue1-ExecNormal          value 'N'.
               88  ESue1-ExecRESTART         value 'R'.
           05  filler                      pic x(14).
      *
      **>  Input/Output parameters
           05  ESue1-JCLfile               pic x(256).
      *
      **>  Output parameters
           05  ESue1-ReturnCode            pic x(2).
           05  ESue1-ReturnMsg             pic x(256).
      *
      **>  Delimiter
           05  ESue1-X00                   pic x(1).

The mfbsiue1.cpy copybook file can be found in $COBDIR/cpylib.

User Exit usage

The user exit module retrieves the full path and filename of the original JCL file or substituted file name. You can use the optional parameter JCLExitID to specify work to be done by the user exit. The maximum length for this string is 32 characters.

Before returning, the user exit program sets the return code ESue1-ReturnCode to 00 and specifies the new file to submit (ESue1-JCLfile). If necessary, the submission process can be stopped. MFBSIJCL ends with a return code of 207. To do this:

  • Set the return code ESue1-ReturnCode <> "00".
  • Set your own error message with ESue1-ReturnMsg.