[comp.lang.asm370] mvs jcl

siperas@hsi86.hsi.com (Steve Siperas) (05/15/91)

Hi

a related question to assembler 370. Is there anyway to program a mutiple step
jcl job to be interactive as it is runs or at the beginning of the job determine
what steps to run. I don't want to have to actually modify the jcl all the time.
I know that I could bundle the jcl in rexx to do this but was
looking to see if the jcl could handle the task itself incase rexx is not being
used.


thanks

steve


Steve Siperas                   siperas@hsi.com -OR- {yale,uunet}!hsi!siperas
3M Health Information Systems
Wallingford, Connecticut

I've never really trusted Smokey the Bear.  Everytime I see him I
wonder what happened to the Boy Scout that was orginally wearing that hat.

SOMITCW@VCCSCENT.BITNET (05/16/91)

 On Wed, 15 May 91, hsi!hsi86!siperas@UUNET.UU.NET said;
>a related question to assembler 370. Is there anyway to program a
>mutiple step jcl job to be interactive as it is runs or at the
>beginning of the job determine what steps to run.
>I don't want to have to actually modify the jcl all the time.
>I know that I could bundle the jcl in rexx to do this but was
>looking to see if the jcl could handle the task itself incase
>rexx is not being used.

    I have seen such an animal at one time.  The first step would
 read a control file and set a conditional code of what was in the
 control file, 0 through 40.  The end of the second step would
 write 2 in the control file, the end of the third step would write
 3, the end of the last step would write 0 in the control file.
 An abend in any step would cause the first step to set a condition
 code that would bypass all steps until the correct one to restart.

    Other application systems there used JCL job locks.
 JCL job locks are much easier to code and control, all is done in
 normal JCL, and there is less chance of a bad restart.
 JCL job locks can insure proper restores are done before a restart.

 A simplified Example:
    //JOB1 JOB JOB,JOB,CLASS=P
    //PGM1 EXEC PGM=PGM1
    //LOCK DD  DSN=LOCK.JOB1,DISP=(,CATLG,DELETE),
    //         SPACE=(TRK,0),VOL=REF=CONTROL
    //JOB2 JOB JOB,JOB,CLASS=P
    //PGM2 EXEC PGM=PGM2
    //LOCK DD  DSN=LOCK.JOB1,DISP=(SHR,DELETE,KEEP)
    //LOCK DD  DSN=LOCK.JOB2,DISP=(,CATLG,DELETE),
    //         SPACE=(TRK,0),VOL=REF=CONTROL
    //JOB3 JOB JOB,JOB,CLASS=P
    //PGM3 EXEC PGM=PGM3
    //LOCK DD  DSN=LOCK.JOB2,DISP=(SHR,DELETE,KEEP)
    //LOCK DD  DSN=LOCK.JOB3,
    //         SPACE=(TRK,0),VOL=REF=CONTROL

    Note: Any abend would cause the remaining jobs to JCL error out.
          A resubmit of the job stream would cause all jobs up to
          the abend to JCL error out.
          The job that had abended would be the one to restart.
          If the job ran correctly, then the remain jobs would start.
          Jobs in the stream could switch between CPU's with shared disk.

pc@ctt.ctt.bellcore.com (05/16/91)

In article <9105160453.AA10338@ucbvax.Berkeley.EDU> hsi!hsi86!siperas@UUNET.UU.NET (Steve Siperas) writes:
> a related question to assembler 370. Is there anyway to program a mutiple step
> jcl job to be interactive as it is runs or at the beginning of the job determine
> what steps to run. I don't want to have to actually modify the jcl all the time.

interactive?  as in interfacing to a user?  sure:  if the executing
program does some computation, it can issue a DYNALLOC (SVC 99) to
allocate the appropriate IO device, such as a terminal. 

further, it could use the INTRDR facility to submit job steps according
to conditions.

but is this the right way to do things?  why does it have to be run
under JCL and not TSO, or even CMS?  jcl is painful.  

peter clitherow

pc@BELLCORE.COM (05/16/91)

In article <9105160453.AA10338@ucbvax.Berkeley.EDU>
        hsi!hsi86!siperas@UUNET.UU.NET (Steve Siperas) writes:
> a related question to assembler 370. Is there anyway to program a mutiple step
> jcl job to be interactive as it is runs or at the beginning of the job
        determine
> what steps to run. I don't want to have to actually modify the jcl all the
        time.

interactive?  as in interfacing to a user?  sure:  if the executing
program does some computation, it can issue a DYNALLOC (SVC 99) to
allocate the appropriate IO device, such as a terminal.

further, it could use the INTRDR facility to submit job steps according
to conditions.

but is this the right way to do things?  why does it have to be run
under JCL and not TSO, or even CMS?  jcl is painful.

peter clitherow

siperas@HSI86.HSI.COM (Steve Siperas) (05/21/91)

In article <9105161712.AA27833@ucbvax.Berkeley.EDU> you write:
>
>but is this the right way to do things?  why does it have to be run
>under JCL and not TSO, or even CMS?  jcl is painful.
>
>peter clitherow

Peter

I have to send a tape containing files to various sites and have no idea
what they have besides MVS. Some people use one or two files while others
may use the entire tape.

thanks

steve


--
Steve Siperas                   siperas@hsi.com -OR- {yale,uunet}!hsi!siperas
3M Health Information Systems
Wallingford, Connecticut

I've never really trusted Smokey the Bear.  Everytime I see him I
wonder what happened to the Boy Scout that was orginally wearing that hat.