Here is the JCL to execute TSOBATCH:
//jobname JOB account,'your job card',CLASS=X,MSGCLASS=X, etc
//TSOBATCH EXEC PGM=IKJEFT01,DYNAMNBR=50
//SYSTSPRT DD   SYSOUT=*
//SYSPRINT DD   SYSOUT=*
//SYSUDUMP DD   SYSOUT=*
//SYSTSIN  DD   *
   EXEC 'userid.CLIST(member)'
   (replace with library and member name of your allocation clist)
/*
//

Here is a clist to execute the IMS DBDMAP program.  Includes
allocating datasets, executing programs, freeing datasets.  Includes
error checking, so somewhat complex.  I overtyped our data set names
with Lowercase descriptions.

PROC 0
  CONTROL NOPROMPT NOSYMLIST NOLIST NOCONLIST   CAPS NOMSG NOFLUSH
  CLEAR
  FREE F(TASKLIB IMSMAP SYSOUT SYSPRINT DBDLIB   PSBLIB   SYSIN)
  CONTROL NOPROMPT NOSYMLIST NOLIST NOCONLIST   CAPS   MSG NOFLUSH
  ALLOC F(TASKLIB)  DA('IMSVS.RESLIB') SHR
  ALLOC F(IMSMAP)   DA(*)
  ALLOC F(SYSOUT)   DA(*)
  ERRDST: WRITE
    WRITENR ENTER NOTHING FOR SCREEN OR DESTINATION ==>
    READ &DST
    WRITENR &DST
    SET &MAXCC = 0
    IF (&DST EQ ) THEN ALLOC F(SYSPRINT) DA(*)
    ELSE               ALLOC F(SYSPRINT) DEST(&DST) SYSOUT(A) +
                 FORMS(DBD)  RECFM(F B A) LRECL(133) BLKSIZE(3990)
    IF &MAXCC NE 0 THEN GOTO ERRDST
  CLEAR
  WRITE DEST &DST   OK
  ERRDBD: WRITE
    WRITE ENTER NOTHING FOR IMSVS.DBDLIB
    WRITE ENTER    T    FOR userid.T.DBDLIB
    WRITENR ENTER   DSN   FOR OTHER DBDLIBS ==>
    READ &DBD
    IF (&DBD EQ  ) THEN SET &DBD = IMSVS.DBDLIB
    IF (&DBD EQ T) THEN SET &DBD = userid.T.DBDLIB
    IF (&SYSDSN('&DBD(none)') NE MEMBER NOT FOUND) THEN DO
      WRITE '&DBD' &SYSDSN('&DBD(none)')
      GOTO ERRDBD
    END
    SET &MAXCC = 0
    ALLOC F(DBDLIB) DA('&DBD') SHR INPUT
    IF &MAXCC NE 0 THEN GOTO ERRDBD
  CLEAR
  WRITE DEST &DST   DBDLIB '&DBD'   OK
/*  WRITE ENTER    B    FOR hlq.hlq2.PSBLIB
/*  WRITE ENTER    T    FOR userid.T.PSBLIB
/*  WRITENR ENTER   DSN   FOR OTHER PSBLIBS ==>
/*  READ &PSB
/*  IF (&PSB EQ  ) THEN SET &PSB = IMSVS.PSBLIB
/*  IF (&PSB EQ B) THEN SET &PSB = hlq.hlq2.PSBLIB
/*  IF (&PSB EQ T) THEN SET &PSB = userid.T.PSBLIB
/*  IF (&SYSDSN('&PSB(none)') NE MEMBER NOT FOUND) THEN DO
/*    WRITE '&PSB' &SYSDSN('&PSB(none)')
/*    GOTO       ERRPSB
/*  END
/*  SET &MAXCC = 0
/*  ALLOC F(PSBLIB) DA('&PSB') SHR INPUT
/*  IF &MAXCC NE 0 THEN GOTO ERRPSB
/*CLEAR
  IF (&DST NE ) THEN DO
   OPENFILE SYSPRINT OUTPUT
   SET     &SYSPRINT = &STR(1DBDLIB = &DBD)
   PUTFILE  SYSPRINT
   CLOSFILE SYSPRINT
  END
/*WRITE DEST &DST   DBDLIB '&DBD'   PSBLIB '&PSB'   OK
  WRITE
  WRITE ENTER THE DBDNAME(S)                     THEN /* TO END PROGRAM
  WRITE
  ALLOC F(SYSIN)    DA(*)
  CALL 'IMSVS.BATCHLIB(DBDMAP)'
  FREE F(TASKLIB IMSMAP SYSOUT SYSPRINT DBDLIB /*PSBLIB*/ SYSIN)
  WRITE *** DBDMAP DONE *** CC = &MAXCC
END


On Mon, Nov 28, 2011 at 12:33 PM, John Dawes <jhn_da...@yahoo.com.au> wrote:
> Mike,
> No, I am not aware of this (TSO batch job).  Would you have an example which 
> I could try?
-- 
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to