Starting the Datacom MUF as a Started Task or Started Job

book

Article ID: 32416

calendar_today

Updated On:

Products

CA Datacom CA Datacom/AD

Issue/Introduction

The installation and configuration of a CA Datacom/AD and CA Datacom/DB Multi-User Facility (called MUF) as delivered involves running the MUF as a standard batch job. Because many clients would like to start the MUF like other system processes (in many cases a started task, or STC), this document will look at the alternatives to running the MUF as a batch job.

There are certain requirements for using started tasks to note:

  1. You cannot have a JCLLIB statement within a PROC, and it by definition cannot be used in started tasks, since it must follow the JOB card and precede any EXEC cards.
  2. INCLUDE members will not be found. This is because the JCLLIB cannot be used, and the INCLUDE members typically are not part of a system defined PROCLIB concatenation.

To deal with this situation, you have two options to start the MUF as other than a regular job:

  1. You can run the MUF as a Started Job - using the IEFJOBS file
  2. You can run the MUF as a Started Task - using the IEFPDSI file

Resolution

Using the IEFJOBS process has several benefits:

  • Started Jobs (from IEFJOBS) run under the same general security as Started Tasks. You can, however, specify a USER=xxx parameter on the JOB card (be sure the proper Surrogate rules are in place) or a USER=xxx,PASSWORD=xxx value (not recommended for obvious reasons)
  • Since the execution is via a console START, normal job initiators are not used, and the job is started immediately, without consideration of any resources needed
  • Also, since initiators are not used, the Started Job will always have a clean address space
  • Like a normal job, the JCL as delivered for CA Datacom can be used. Since you have a JOB card, you can also keep the JCLLIB and INCLUDE members
  • Unlike a Started Task, Started Jobs can use DD DUMMY and DD * files
  • Accounting information can come from the JOB card accounting, rather than having to specify special STEP accounting (in a multi-step execution)
  • Job output can be controlled more easily


Using IEFPDSI (Started Tasks):

  • You also have the advantage of immediate start and non-initiator processing
  • To use the CA Datacom jobs, you have to tailor the JCL before it will run
  • You already know how Started Tasks security and WLM are working

Now, if you choose to use a Started Task PROC (STC) instead of a Started JOB, you will need to make the following changes (your JCL might be slightly different from these examples):

1. Remove the JCLLIB statement from your PROC:
//JCL JCLLIB ORDER=(CAI.NEWCHLQ.CUSPROC)

2. Where each INCLUDE MEMBER= entry exists in your PROC, you will need to copy the contents of that member from your CUSPROC file to that spot in your PROC JCL.

For example, if the beginning of your first step looks like this…               

//AD15STRT EXEC PGM=DBMUFPR,PARM='/PGMMONTH=1',
//     REGION=0M,MEMLIMIT=NOLIMIT,TIME=1440
//     INCLUDE MEMBER=B15STLIB
//     INCLUDE MEMBER=B15DDOUT
//     INCLUDE MEMBER=B15DDCXX

…you would need to

  1. Copy the contents of CAI.NEWCHLQ.CUSPROC(B15STLIB) following the EXEC PGM=DBMUFPR statement,
  2. Copy CAI.NEWCHLQ.CUSPROC(B15DDOUT) into the PROC after that,
  3. Copy CAI.NEWCHLQ.CUSPROC(B15DDPXX) after that.

When this step is complete, the beginning might look like the examples below (color applied to each member for clarity).

For CA Datacom/AD:

//AD15STRT EXEC PGM=DBMUFPR,PARM='/PGMMONTH=1',

//     REGION=0M,MEMLIMIT=NOLIMIT,TIME=1440    

//STEPLIB  DD DSN=CAI.NEWCHLQ.CUSLIB,   

//         DISP=SHR                     

//         DD DSN=CAI.THLQ.CAAXLOAD,    

//         DISP=SHR                                                    

//CAOESTOP DD  SYSOUT=*      

//SYSPRINT DD  SYSOUT=*      

//SYSOUT   DD  SYSOUT=*      

//SYSPUNCH DD  DUMMY         

//DDSNAP   DD  SYSOUT=*      

//SNAPER   DD  SYSOUT=*      

//SYSUDUMP DD  SYSOUT=*      

//THRSHOUT DD  SYSOUT=*      

//CXX      DD  DSN=CAI.NEWHLQ.9CXX_NAME.CXX, 

//         DISP=SHR                          

//LXX      DD  DSN=CAI.NEWHLQ.9CXX_NAME.LXX, 

//         DISP=SHR                          

//FXX      DD  DSN=CAI.NEWHLQ.9CXX_NAME.FXX, 

//         DISP=SHR                          

//PXX      DD  DSN=CAI.NEWHLQ.9CXX_NAME.PXX, 

//         DISP=SHR                          


In summary, you can move the JCL into a Started Jobs library with very little modification, or you can move the JCL into a Started Task library after modifying it by removing the JCLLIB statement and embedding the INCLUDE members in-line in the JCL. If you would like to use the Started Jobs process but are not set up for IEFJOBS (the Started Jobs processing), please consult your z/OS Systems Programmers for assistance.

Additional Information

For more information about using the IEFJOBS (Started Jobs) process, please refer to:


As always, please contact Broadcom support for CA Datacom if you have further questions.