JCL Slides

Preview:

Citation preview

1

Topic 1. Introduction

Topic Objectives

After attending this topic the student should be able to desire the need ofJCL and to state the different processes in JES

2

WHAT IS JCL ?

JOB CONTROL LANGUAGE

L ANGUAGE WE USE TO

C ONTROL THE EXECUTION OF

J OB’S IN THE SYSTEM

3

ACCOUNTING

OPERATING SYSTEMPROGRAM ?

PROGRAM 1 - 2 - 3

HARDWARE

DATASETS

4

J C L STATEMENT

// JOB

// EXEC

// DD

5

JCL STATEMENT HISTORY

DDDD

DDEXEC

JOB

EDIT-EDUCBE05.JOBLIB.CNTL(TESTJOB)-01.00--COLS007078

COMMAND----> SCROLL--> PAGE

00100 // JOB00200 // EXEC00300 // DD00400 // DD00500 // DD

6

JES PROCESSORS

SYS1.PROCLIB

INPUT CONVERSION EXECUTION OUTPUTPRINT/ PUNCH

PURGE

SPOOL

INPUTQUEUE

JOBQUEUE

OUTPUTQUEUES

PRINTER

CARD PUNCH

LOCAL READER

INTERNALREADER

RJENJE

RJENJE

7

JOB SELECTION

CHECK POINTJOB QUEUE

JOB CLASS14 Z145 C146 Z1078 T2001 A2002 B

MVS JES INIT 1JOBCLASSESA,Z,B,C

INIT 2 INIT 3

JOBCLASSESS,B,A

JOBCLASSESC,Z

SPOOL

CLASS A2001CLASS B2002CLASS C145

8

PROGRAM MANAGEMENT - SEARCH SEQUENCE

JOB PACK AREA

JOBLIB - STEPLIB

FIXED LINKPACK AREA(FLPA)

MODIFIED LINKPACK AREA(MLPA)

PAGEABLE LINK PACK AREA(PLPA)

SYS1.LINKLIB(LNKLST xx)

ABEND 806

9

Topic 2. Job Control Language

Objectives

Upon completion of this unit the student should be able to :

* Demonstrate an understanding of the functions of specific parameters that can be coded on the JOB,EXEC, and DD statements.* Correct common JCL syntax and usage errors.* State the difference between DD DATA and DD.* Identify valid dataset name.* Code DD statements using specified information.

10

MVS / ESA JCL REFERENCE

MVSENERPRISE SYSTEM

ARCHITECT.

JCL

REFERENCE

GC28 - 1654

11

JCL PARAMETER FIELD

`//JNAME////STEP1//SYSIN//SYSPRINT

JOB

EXECDDDD

(ACCT-NR,ACCT-INFO), ‘PRG NAME’,NOTIFY=USERIDX THIS IS A CONT.CARDPGM=TESTDSN=(USERIDX.EDUC.CNTL)SYSOUT = A

IBENTIFIER

NAME FIELDOPERATION PARAMETER FIELD

12

IDENFIER FIELD

// JCL

// DELIMITER OR JES2 CONTROL STATEMENTS

// COMMENT OR JES3 CONTROL STATEMENTS

COL 1

13

NAME FIELD

//TSOIOXXA JOB ………………

//#STEPA EXEC ………………

//INDATA DD……………...

14

OPERATION FIELD

// TSOIOXXA JOB …………….

//# STEPA EXEC ……………..

//INDATA DD ………………

//INTEST IF

//LIB JCLLIB

15

PARAMETER FIELD

// RUN1 JOB D69A , DOE , MSGCLASS = S

//ST1 EXEC PGM = ADVJCL

//INDD DD DSN = JCL.CLASS,DISP = SHR

16

COMMENT FIELD

// ST1 EXEC PGM = ADVJCL STEP1

//INDD DD DSN = JCL.CLASS, IN DATA

17

CONTINUATION OF STATEMENTS

POS

1 71

//NAME OPERATION PARAMETER,

// PARAMETER , PARAMETER

18

//SYSUT1 DD DSN = BE05MST.MY.DATA,DISP = (NEW,CATLG,CATLG),// DCB=(LRECL=80, BLKSIZE=3120, RECFM=FB) VALID

//SYSUT1 DD DSN=BE05MST.MY.DATA ,DISP=(NEW,CATLG,CATLG), DCB=(LRECL=80,BLKSIZE=3120,RECFM=FB) VALID

//SYSUT1 DD DSN=BE05MST.MY.DATA,DISP=(NEW,CATLG,CATLG) DCB=(LRECL=80,BLKSIZE=3120,RECFM=FB) NOTVALID

19

CONTINUATION THE COMMENT FIELD

POS.

1 2 71 72

//ST1 EXEC BJCL THIS STMNT C

// CALLS THE BASIC JCL

//* PROCEDURE

20

POSITIONAL PARAMETERS

//NAME OPERATION P1 , P2 , P3 , K1 = A

//NAME OPERATION , P2 , K1 = A

//NAME OPERATION P1 , K1 = A , K2 = B

//NAME OPERATION K1 = A , K3 = C , K2 = B

21

KEYWORD PARAMETERS

//NAME OPERATION K1 = A , K2 = B , K3 = C

//NAME OPERATION P1 , K2 = B

//NAME OPERATION , P2 , K3 = C , K1 = A

//NAME OPERATION P1 , P2

22

POSITIONAL AND KEYWORD SUBPARAMETERS

DISP = OLD

DISP = (NEW , KEEP , KEEP )

DISP = ( , KEEP , KEEP)

DCB = (RECFM = FB , LRECL = 80)

DCB = (LRECL = 80 , RECFM = FB )

23

JOB STATEMENT

/ / JOBNAME JOB . . . . .

ACCT FIELD CLASS

PGMER NAME NOTIFY MSG LEVEL TYPRUN MSG CLASS PRTY COND RESTART USER REGION

24

POSITIONAL PARAMETERS ON THE JOB STMNT.

// RUNA JOB DEPT6 9 A , DOE , . . . . .

// RUNB JOB ‘ D 6 9 ,B 2 ‘,’ J DOE ‘, . . . . .

// RUNC JOB (‘ D/ 30 ‘, B 62) , JDOE , . . . . .

// RUND JOB DEPT 6 9 , ‘ MURTHY.D.SINGAM‘, . . . . .

25

KEYWORD PARAMETERS ON THE JOB STMNT.

// RUNA JOB 3 MACH 369AC56W , DAVIS ,

// MSGLEVEL = (1 ,1) , MSGCLASS = S ,

// CLASS = E , NOTIFY = TSOIO50 ,

// TYPRUN = SCAN

26

RESTART PARAMETER

S T E P 1

S T E P 2

S T E P 3

S T E P 4

RESTART

27

JOB ENTRY SUBSYSTEM

E

J S

2

3

28

JES 2 CONTROL STATEMENTS

$ COMMAND OUTPUT SIGNOFF

JOBPARM PRIORITY SIGNON

MESSAGE ROUTE XEQ

NETACCT SETUP XMIT

NOTIFY

29

// [ name ] COMMAND ‘ command command - operand ‘

//C1 COMMAND ‘ S RMT1 ‘

//C2 COMMAND ‘ SEND ‘ ‘ THE COMPILE STEP IS NOW COMPLETE ‘ ‘, USER = BE 05 ‘

7 1 16

30

JES 3 CONTROL STATEMENTS

DATASET NETACCT

ENDDATASET OPERATOR

ENDPROCESS PAUSE

FORMAT PROCESS

MAIN ROUTE

NET SIGNOFF

SIGNON

31

//RUN1 JOB 3MACHE369AC56W, ‘ MURTHY’ ,NOTIFY=TSOISDG,// MSGCLASS=A,CLASS=A,MSGLEVEL=(1,1)/*ROUTE PRINT RMT86/*ROUTE PRINT DALVM1. DEVISDG//STEP1 EXEC PGM=IEBGENER//SYSPRINT DD SYSOUT=*//SYSUT1 DD DSN=TSO1023.JCLERRS.CNTL(PROBLEM1),DISP=SHR//SYSUT2 DD SYSOUT=*//SYSIN DD * SPLIT SCREEN

JES JOB LOG -----SYSTEM K158 ----NOD11.53.43 JOB 9019 IEF4521 JOBFAIL JOB NOT RUN --JCL ERROR------------- JES2 JOB STATISTICS --------- 9 CARDS READ 15 SYSOUT PRINT RECORDS 0 SYSOUT OUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0. 00 MINUTES EXEXCUTION TIME 1 //RUN1 JOB 3MACHE369AC56W, ‘MURTHY SD’,NOTIFY=TSOISDG, // MSGCLASS=A,CLAS=A,MSGLEVEL=(1,1) ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO.MESSAGE 1 IEF6301 UNIDENTIFIED KEYWORD CLAS

32

JES2 JOB LOG ----- SYSTEM K158 ----- NOD

14.13.45 JOB 9432 IEF4521 RUN2 JOB NOT RUN - JCL ERROR14.13.45 JOB 9432 $HASP396 RUN2 TERMINATED------------------------- JES2 JOB STATISTICS -------------------------------09 DEC 85 JOB EXECUTION DATE 10 CARDS READ 24 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KYBTES 0.00 MINUTES EXECUTION TIME 1 //RUN2 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,2),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP10 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOISDG.TEST.DATA(BASE),DISP=SHR 5 //SYSUT2 DD DSN=TSOISDG.NEW.DATA,DISP=(CATLG,DELETE), // SPACE=(TRK(1,1),RLSE), VOL=SER=EDPAK5 8 //SYSIN NO. MESSAGE

1 IEF6431 UNIDENTIFIED POSITIONSL PARAMETER IN THE MSGLEVEL FIELD

33

JES2 JOB LOG -------- SYSTEM K158 ----- NOD

11.54.49 JOB 9024 IEF4521 RUN3 JOB NOT RUN --- JCL ERROR11.54.49 JOB 9024 $HASP396 RUN3 TERMINATED------------------------ JES2 JOB STATISTICS ------------------------09 DEC 85 JOB EXECUTION DATE 8 CARDS READ 22 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXEXCUTION TIME 1 //RUN3 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP+SHR 5 //SYSUT2 DD SYSOUT=* STMT NO. MESSAGE

1 IEF6401 EXCESSIVE NUMBER OF POSITIONAL PARAMETERS ON THE JOB STATEMENTS.

34

JES2 JOB LOG -----------SYSTEM K158 ---- NOD

11.55.43 JOB 9026 IEF4521 JOBFAIL JOB NOT RUN ---- JCL ERROR-------------------JES2 JOB STATISTICS------------------------------------------- 8 CARDS READ 14 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN4 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL(1,2) ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO. MESSAGE

1 IEF6321 FORMAT ERROR IN THE MSGCLASS FIELD

35

EXEC STATEMENT

// STEPNAME EXEC . . . . .

PGM = CONDPROC = DPRTYPROCNAME = DYNAMNBR PARM PERFORM RD ACCT REGION ADDRSPC TIME

36

POSITIONAL PARAMETERS ON THE EXEC STMNT

// STEPNAME EXEC PGM = IEBGENER

// STEPNAME EXEC PROC = BASICJCL

// STEPNAME EXEC BASICJCL

37

KEYWORD PARAMETERS ON THE EXEC STMNT.

//RUNA JOB . . . . . . . .

//STEP 2 EXEC PGM = TEST ,

// COND = (4 , EQ , STEP 1 ) , REGION = 1 0M

// TIME = ( 30. 00 ) , PERFORM = 60 , PARM = T1 ,

// DPRTY = ( 15 , 15 ) , ACCT = ( acct info ……….) ,

// DYNAMNBR = 10, RD = NC , ADDRSPC = REAL

38

TIME PARAMETER

TIME [ . PROCSTEPNAME ] = { ( [ MINUTES] [ , SECONDS])}

{ 1440 } { NOLIMIT }

{ MAXIMUM }

39

TIME PARAMETER

// IF [ ( ] relational - expression [ ) ] THEN . . action when relational - expression is true

// [ name] ELSE . . action when relational - expression is false .

// [ name] ENDIF

40

TIME PARAMETER

//BEO5JOB JOB ………………….

//STEP0 EXEC PGM = UPDATE

//STEP1 EXEC PGM = VALIDATE

//IFTEST IF (STEP0 . RC>4 & STEP1 .RC > 20) THEN//STEPA EXEC PGM = . . . . .// ELSE //STEPB EXEC PGM = ……..//IFTEST ENDIF

41

Operators on IF/THEN/ELSE/ENDIF Statement Construct

OPERATOR OPERATION ORDER OF EVALUATION

NOT operator:NOT or not first

Comparison operators:GT or > Greater than secondLT or < Less than secondNG or = Not greater than secondNL or = Not less than secondEQ or = Equal secondNE or = Not equal secondGE or >= Greater than or equal to secondLE or <= Less than or equal to second

Logical operators :AND or & AND thirdOR or I OR third

42

CONDITIONAL EXECUTION OF JOB STEPS

COND =TRUE

FALSE

BYPASS

EXECUTE

43

VALID COMPARISON OPERATORS for COND = parm.

GOLD

44

JES2 JOB LOG --------SYSTEM K158 ----- NOD

14.21.40 JOB 9460 IEF4521 RUN6 JOB NOT RUN --- JCL ERROR14.21.40 JOB 9460 $HASP396 RUN6 TERMINATED-----------------JES2 JOB STATISTICS ----------------------------09 DEC 85 JOB EXECUTION DATE 10 CARDS READ 24 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN6 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOISDG.TEST.DATA(BASE),DISP=SHR 5 //SYSUT2 DD DSN=TSOISDG.NEW.DATA,DISP=(,CATLG,DELETE), // SPACE=(TRK,(1,1),RLSE),VOL=SER=EDPAKS5 6 //SYSIN DD * STMT NO. MESSAGE

2 IEF6471 FIRST CHARACTER OF NAME NOT ALPHABETIC OR NOT NATIONAL

45

JES2 JOB LOG ----- SYSTEM K158 ----- NOD

11.57.56 JOB 9033 IEF4521 JOBFAIL JOB NOT RUN -- JCL ERROR--------------- JES2 JOB STATISTICS ------------------------- 9 CARDS READ 16 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN7 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, MSGLEVEL(1,1) 2 // MSGCLASS=S,NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 3 //STEP1 EXEC PGM=IEBGENER 4 //SYSPRINT DD SYSOUT=* 5 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 6 //SYSUT2 DD SYSOUT=* 7 //SYSIN DD * STMT NO. MESSAGES

1 IEF6321 FORMAT ERROR IN THE MSGCLASS FIELD 2 IEF6051 UNIDENTIFIED OPERATION FIELD

46

12.01.04 JOB 9043 IEF4521 JOBFAIL JOB NOT RUN -- JCL ERROR--------------- JES2 JOB STATISTICS ------------------------- 14 CARDS READ 21 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //TSOISDGA JOB 3MACHE369AC56W, // TSOISDG, **JOB STATEMENT GENERATED BY SUMMIT** // NOTIFY=TSOISDG ,CLASS=A,USER=TSOISDG, // PASSWORD= , // MSGLEVEL=(1,1) 2 //RUN9 CLASS=A, JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, 3 // MSGLEVEL=(1,1),MSGCLASS=S,NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 4 //STEP1 EXEC PGM=IEBGENER 5 //SYSPRINT DD SYSOUT=* 6 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 7 //SYSUT2 DD SYSOUT=* 8 //SYSIN DD * STMT NO. MESSAGES

2 IEF6051 UNIDENTIFIED OPERATION FIELD 3 IEF6051 UNIDENTIFIED OPERATION FIELD

JES2 JOB LOG ----- SYTEM K158 ----NOD

47

12.02.30 JOB 9046 IEF4521 RUN10 JOB NOT RUN -- JCL ERROR--------------- JES2 JOB STATISTICS ------------------------- 9 CARDS READ 16 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN10 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO. MESSAGES

2 IEF6051 UNIDENTIFIED OPERATION FIELD 6 IEF6051 JOB HAS NO STEPS

JES2 JOB LOG -----SYSTEM K158 -----NOD

48

12.02.50 JOB 9047 IEF4521 RUN11 JOB NOT RUN -- JCL ERROR--------------- JES2 JOB STATISTICS ------------------------- 9 CARDS READ 15 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN11 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO. MESSAGES

2 IEF6051 INCORRECT USE OF MINUS ON THE EXEC STATEMENT

JES2 JOB LOG ----- SYSTEM K158 --- NOD

49

12.04.05 JOB 9049 IEF4521 RUN12 JOB NOT RUN -- JCL ERROR--------------- JES2 JOB STATISTICS ------------------------- 9 CARDS READ 16 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN12 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //STEP1 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM1),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO. MESSAGE

2 IEF6051 UNIDENTIFIED OPERATION FIELD 6 IEF6071 JOB HAS NO STEPS

JES2 JOB LOG -------- SYSTEM K158 ---- NOD

50

14.21.59 JOB 9462 IEF4521 RUN13 JOB NOT RUN -- JCL ERROR14.21.59 JOB 9462 $HASP396 RUN13 TERMINATED--------------- JES2 JOB STATISTICS ------------------------ 09 DEC 85 JOB EXECUTION DATE- 10 CARDS READ 24 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN13 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //EXAMPLE13 EXEC PGM=IEBGENER 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOISDG.TEST.DATA(BASE),DISP=SHR 5 //SYSUT2 DD DSN=TSOISDG.NEW.DATA,DISP=(,CATLG,DELETE), // SPACE=(TRK,(1,1),RLSE),VOL=SER=EDPAK5 6 //SYSIN DD * STMT NO. MESSAGES

2 IEF6421 EXCESSIVE PARAMETER LENGTH ON THE EXEC STATEMENT

JES2 JOB LOG ---- SYSTEM K158 --- NOD

51

12.07.01 JOB 9059 IEF4521 RUN16 JOB NOT RUN -- JCL ERROR -------------- JES2 JOB STATISTICS ------------------------ 9 CARDS READ 15 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN16 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG 2 //SYSIN DD * GENERATED STATEMENT 3 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO. MESSAGE

2 IEF6071 JOB HAS NO STEPS

JES2 JOB LOG ------ SYSTEM K158 --- NOD

52

2.08.49 JOB 9065 IEF4521 RUN18 JOB NOT RUN -- JCL ERROR -------------- JES2 JOB STATISTICS ------------------------ 9 CARDS READ 15 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 1 SYSOUT SPOOL KBYTES 0.00 MINUTES EXECUTION TIME 1 //RUN18 JOB 3MACHE369AC56W,’MURTHY SD’,MSGCLASS=A, // MSGLEVEL=(1,1),NOTIFY=TSOISDG ***ROUTE PRINT RMT86 ***ROUTE PRINT DALVM1.DEVISDG ***STEP10 EXEC PGM=IEBGENER 2 //SYSPRINT DD SYSOUT=* 4 //SYSUT1 DD DSN=TSOIO23.JCLERRS.CNTL(PROBLEM),DISP=SHR 5 //SYSUT2 DD SYSOUT=* 6 //SYSIN DD * STMT NO. MESSAGES

2 IEF6071 JOB HAS NO STEPS

JES2 JOB LOG ----- SYSTEM K158 --- NOD

53

DD Statement

Subtopic objectives

After attending this subtopic the student should be able to :

* Code a DD statement and use different parameters* Recognise when different parameters are needed* Find errors in a DD statement

54

DD ( Data Definition ) STATEMENT

/ / DDNAME DD . . . .

* DSN VOL DCBDATA DISP SPACE SYSOUT

DUMMY UNIT LABEL

55

DESCRIBING THE DATA

USERPROGRAM

DDNAME= DD1

VTOC

D C B (DATA CONTROL; BLOCK)

// JOB/ / EXEC/ / DD1 DD DSN=/ ./ DCB =/ / DD2 DD

56

POSITIONAL PARAMETERS ON THE DD STMNT.

/ / INDATA DD * DATA

, DLM =

instream data for input

/* OR // * OR // ( end of data )

or two character delimiter

// INDATA DD DUMMY

57

KEYWORD PARAMETERS ON THE DD STATEMENT

/ / SYSUT 2 DD DSN = OUTTAPE ,

/ / DISP = ( , CATLG ) , UNIT = TAPE ,

/ / VOL = SER = TAPE 01 ,

/ / LABEL = ( , NSL , RETPD = 99001 )

58

KEYWORD PARAMETERS ON THE DD STATEMENT

/ / SYSUT 2 DD DSN = OUTDATA

/ / DISP = ( , CATLG ) , UNIT = SYSDA ,

/ / VOL = SER = EDPAK 5 , SPACE = (TRK ,1 ) ,

/ / DCB = (LRECL = 80 , BLKSIZE = 800 ) ,

/ / RECFM = FB

59

DDNAME FIELD ON THE DD STATEMENT

/ / PRINT DD DSN = JCLCLASS

/ / DD 1 DD DSN = TESTDATA

/ / SYSUT 2 DD DSN = BASIC . JCL 85

/ / DD DSN = BASIC . JCL 86

60

DEFINITION OF CONCATENATION

C

O

N

C

A

T

E

N

AT

I

O

N

61

RULES OF CONCATENATION

RULES

62

RULES FOR CODING CONCATENATION

EDUC . C

EDUC . A EDUC . B

EDUC.A EDUC.B EDUC.C

63

SIMPLE DATA SET NAME

DSN = A

DSNAME = # X 2

DSN = $ A B C

DSN = A 1 2 3 4 5 6 7 8 CHARS

64

QUALIFIED DATA SET NAME

DSNAME = TSOIO99 . DATA

DSN = ‘ ENTRY . OPED ‘ ‘S . DAY ‘

DSN = TSOI O 99 . MORE .OPED . DATA

65

PATITIONED DATA SET ( PDS ) NAME

DSN = ENTRY ( TEST 2 )

DSN = TSO I O 99 . DATA ( MEM 1) 44 CHAR. 8 CHAR.

66

TEMPORARY DATA SET NAME

DSN = & & SORTOUT

DSN = & & TEMP ( MEM 1 ) 8.CHARS. 8.CHARS.

67

DEFINITION OF REFERBACKS

/ / TSOIO XX JOB

/ / STEP 1 EXEC

/ / OUT 2 DD DSN =

/ / STEP 5 EXEC

/ / NEWOUT DD DSN = *. STEP 1 . OUT 2

68

DATA SET REFERENCED FROM A PREVIOUS STEP

/ / STEP 2 DD DSN = * . STEP 1 . DD4 ,

/ / DISP = ( OLD , DELETE )

69

DISP PARAMETER ON THE DD STATEMENT

INITIAL NORMAL ABNORMAL

DISP = ( NEW , DELETE , DELETE)

OLD , KEEP , KEEP

SHR , PASS , CATLG

MOD , CATLG , UNCATLG , UNCATLG

70

UNIT PARAMETER

UNIT = ( DEV ADDRESS , UNIT COUNT , DEFER )

DEV TYPE

GROUP NAME

71

VOLUME OR VOL PARAMETER

VOL = SER = EDPAK 5

VOL = REF = DSNAME

VOL = REF = * . DDNAME

72

SPACE PARAMETER

SPACE = ( TRK , ( pqty , sqty , dir ) , RLSE)

CYL

blklgth

73

VOLUME LABEL ON TAPE

STANDARD LABEL

TAPEMARK

TAPEMARK

EOF 2 EOF 1 TAPEMARK

DATASET 2 HDR2 HDR1

TAPEMARK

EOF 2EOF 1TAPE MARKDATASET 1

TAPEMARK

HDR 2 HDR 1 VOLUME LABEL

NOLABEL

DATASET 1TAPEMARKDATASET 2TA

PEMARK

TAPE MARK

74

LABEL PARAMETER

LABEL = ( SEQ # , SL , RETPD = nnnn )

, SUL , EXPDT = yyddd)

, AL , AUL

, NSL , NL

, BLP , LTM

75

DCB PARAMETER

DCB = ( RECFM = RECORD FORMAT ,

LRECL = LOGICAL RECORD LENGTH ,

BLKSIZE = LGTH OF BLK )

76

SYSOUT PARAMETER

SYSOUT = ( CLASS NAME )

/ /SYSUT 2 DD SYSOUT = A

/ /SYSPRINT DD SYSOUT = *

77

PARAMETERS FOR EXISTING CATALOGED DATA SET

/ /DDNAME DD . . . .

DSN =

DISP =

78

PARAMETERS FOR EXISTING NONCATALOGED DATA SET

/ /DDNAME DD . . . . .

DSN =

DISP = VOL =

UNIT =

79

PARAMETERS FOR CREATING A DATA SET

/ /DDNAME DD . . . .

DSN = VOL =

DISP = SPACE =

UNIT DCB =

80

SPECIAL DDNAMES

/ /JOBLIB

/ /STEPLIB

/ /SYSABEND

/ /SYSUDUMP

/ /SYSCHK

81

Topic 3. IBM Utilities

ObjectivesUpon completion of this unit the student should be able to :* Understand what an IBM Utility Program is and how they are used* List the three classes of IBM Utility Programs* State what two types of statements utilities use.*Describe the general format and code statements for various utility prog.*Identify and code the JCL required for various utility programs.* Understand how to use the IBM Utilities Manual.* Code a utility program to perform the following. - List the VTOC for a data set on DASD. - List information about a partitioned data set on DASD. - Scratch and uncatalog a data set on DASD. - Copy a data set from one device to another. - Print a data set.

82

MVS / ESADATA ADMINISTRATION

U T I L I T I E S

M A

N

U

A

L

SC26 - 4599

83

WHAT IS A

UTILITY

84

SYSTEM UTILITY DATA SET UTILITYPROGRAMS PROGRAMS

• IEHATLAS

• IEHINITT

• IEHLIST

• IEHMOVE

• IEHPROGM

• IFHSTATR

• IEBCOMPR

• I EBCOPY

• IEBDG

• IEBEDIT

• IEBGENER

• IEBIMAGE

• IEBISAM

• IEBPTPCH

• IEBUPDTE

INDEPENDENT UTILITY PROGRAMS• ICAPRTBL

85

UTILITY CONTROL STATEMENT CODING RULES

/ /STEPNAME EXEC PGM =

/ /SYSIN DD *

(COL.4) (COL.7 2)

LISTVTOC DSNAME = dsname , X VOL = device = serial , FORMAT/* (COL.16)

86

IEHPROGM PROGRAM

• SCRATCHES RENAMES CATALOGS

• UNCATALOGS

87

JCL STATEMENTS for IEHPROGM

/ /JOBNAME JOB/ /STEPNAME EXEC PGM = IEHPROGM

/ /SYSPRINT DD SYSOUT = */ /ANYNAME 1 DD UNIT = device ,

/ / VOL = SER = serial ., DISP = SHR/ /ANYNAME 2 DD UNIT = ,VOL = ,DISP =

/ /SYSIN DD * UTILITY CONTROL STATEMENT/*

88

UTILITY CONTROL STATEMENTS for IEHPROGM

SCRATCH DSNAME = dsname , X

VOL = device = serial

UNCATLG DSNAME = dsname

89

IEHLIST PROGRAM

• LIST CATALOG

• LIST PDS

• LIST VTOC

90

JCL STATEMENTS for IEHLIST

/ /JOBNAME JOB/ /STEPNAME EXEC PGM = IEHLIST

/ /SYSPRINT DD SYSOUT = */ /ANYNAME 1 DD UNIT = device ,/ / VOL = SER = serial , DISP =SHR/ /ANYNAME 2 DD UNIT = ,VOL = ,DISP =/ / SYSIN DD *

UTILITY CONTROL STATEMENT/*

91

UTILITY CONTROL STATEMENTS for IEHLIST

LISTPDS DSNAME = dsname , X

VOL = device = serial , format

LISTVTOC DSNAME = dsname , X

VOL = device = serial , format

92

IEBGENER PROGRAM

IEBGENER

93

JCL STATEMENTS for IEBGENER

/ /JOBNAME JOB/ /STEPNAME EXEC PGM = IEBGENER

/ /SYSPRINT DD SYSOUT = */ /SYSUT 1 DD ………….

/ /SYSUT 2 DD …………./ /SYSIN DD *

UTILITY CONTROL STATEMENT

/*

94

CODING the SYSUT 1 STATEMENTS

/ /SYSUT 1 DD ( card input )

/ /SYSUT 1 DD DSN = dsname , DISP = SHR

/ /SYSUT 1 DD DSN = dsname (member) ,

/ / DISP = SHR

95

CODING the SYSUT 2 STATEMENTS

/ /SYSUT 2 DD SYSOUT = P, DCB = BLKSIZE = 80

/ /SYSUT 2 DD SYSOUT = *, DCB = BLKSIZE = 133

/ /SYSUT 2 DD DSN = dsname , DISP = . . . . . .

/ /SYSUT 2 DD DSN = dsname ( member ) ,DISP = . . . . . .

96

UTILITY CONTROL STATEMENTS for IEBGENER

GENERATE MAXNAME = n

MEMBER NAME = name

97

IEBCOPY

DIRECTORY M1 M2

MEMBER 1

MEMBER 2

DIRECTORY M1 M2

MEMBER 1

MEMBER 2

PDS 1 PDS 2

98

IEBCOPY

COPY

ALTERMOD

COPYMOD

SELECT

EXCLUDE

99

IEBCOMPR

100

IEHMOVE

COPY

MOVE

101

IEHMOVE UTILITY CONTROL STATEMENTS

COPY

MOVE

SELECT

EXCLUDE

INCLUDE

REPLACE

102

Topic 4 . VSAM Concepts

Objectives

Upon completion of this unit the student should be able to :

* Discuss the similarities and differences between the four types of VSAM data sets* Define, Delete, Copy, and Print VSAM data sets using AMS(IDCAMS).* Obtain catalog information about VSAM data sets.

103

VSAM

?? ?

?

? ? ?

?

104

WHY USE VSAM

VSAM

105

WHEN TO USE VSAM

DATA

BASE

MASTERCATALOG

USERDATA

USERCATALOG

106

VSAM MANAGES . . . . .

CATALOGS DATA

107

CATALOGS

DATASET NAME

RECORD SIZE

FREE SPACE

108

TYPES OF VSAM DATASETS

KSDS ESDS RRDS LINEAR

109

KEY - SEQUENCED DATA SETS

KSDS

MURTHY SD NAME

174167

SERIAL

110

INSERTING RECORDS INTO A KSDS

MURTHY SD SINGH KL

SACHIN T 396437

174167 746123

111

ENTRY - SEQUENCED DATA SETS

ESDS

R 1 R 2

R 3

112

RELATIVE RECORD DATA SETS

R R D S

1 2 3 ( E ) 4

* E = EMPTY SLOT

113

LINEAR DATA SET

LINEAR DATASET

DATA OBJECT

VITUALSTORAGE

MAP

114

COTROL INTERVALS

115

FIELDS IN CONTROL INTERVALS

R1 R 2 R n FREE SPACE

RDFn

RDF1

RDF2

CIDF

R CD IF D F

116

ADDING RECORDS IN A CONTROL INTERVAL

R 2

R 1 FREE SPACE

RDF1

CIDF

117

MORE ON CONTROL INTERVALS

R 1 R 2 FS RDF2

RDF1

CIDF

118

ANSWER TO QUIZ

R 1 R 2 R 3 R 4 F S

R R CD D IF F D2 1 F

119

CONTROL INTERVAL SPLITR 5 R 6

R1 R2 R3 R4 FSRDF2

RDF1

CIDF

R1 R2 R3 FSRDF2

RDF1

CIDF

R4 R5 R6 FSRD RD CIF2 F1 DF

120

CONTROL AREAS

CONTROL INTERVAL

CONTROL INTERVAL

CONTROL INTERVAL

CONTROL INTERVAL

121

THE VSAM UTILITY

ACCESS METHOD SERVICES

IDCAMS

122

INVOKING IDCAMS

//stepname EXEC PGM=IDCAMS

//SYSPRINT DD SYSOUT=A

//ddname DD DSN=clustername

//SYSIN DD *

AMS statements

/*

123

CONTROL STATEMENTS

COL 2

STATEMENT - STATEMENT

124

DEFINING A CLUSTER

DATA

INDEX

125

CLUSTER INFORMATION

DEFINE - CLUSTER -

(NAME (BE05JCL.FILE) - VOLUMES (VOL001) -

TRACKS (1,1) -

126

DATA COMPONENT

DATA -

(NAME (BE05JCL.FILE.DATA) - RECORDSIZE (200,200) -

KEYS (10 ,5) -

127

INDEX COMPONENT

INDEX -

(NAME (BE05JCL.FILE.INDEX))

128

CLUSTER

DATA

INDEX

129

DELETING DATA SETS

DELETE -

TEST. FILE -

CLUSTER - PURGE -

ERASE

130

REPRO STATEMENT

REPRO -

INFILE (ddname) -

OUTFILE (ddname) -

131

PRINTING VSAM DATA SETS

PRINT -

INDATASET (BE05JCL.FILE) -

CHAR

132

LISCAT STATEMENT

LISTCAT -

ENTRIES (BE05JCL .FILE)

133

Topic 5. Generation Data Groups.

ObjectivesUpon completion of this unit the student should be able to:

* Discuss the uses of generation data sets.

* Define and use a generation data set.

* Delete a generation data set.

134

GDGs

135

NAMING CONVENTION

ABSOLUTE NAME RELATIVENAME CHRONOLOGICAL ORDER

GEN.GOOO6VOO GEN(O) CURRENT

GEN.GOOO5VOO GEN(-1)

GEN.GOOO4VOO GEN(-2) OLDEST

136

ALLOCATE GDG BASE

GDG BASE

CATALOG

137

DEFINE MODEL DSCB

CATALOG

VTOC. . . . . . .

MODEL DSCB . . . . . .

138

CREATE GDS

0

IEFBR14

+1

-2

-1

0

139

DELETING GDG CATALOG ENTRIES

-2

140

Topic 6. JCL Procedures

Objectives

Upon completion of this unit the student should be able to :

* Disciss the usage of procedures

* Define an instream procedure

* Use the three methods of modifying a procedure at run time.

141

PROCEDURES

PROC

142

TYPE OF PROCEDURES

PROC

PEND

PROC

INSTREAM

CATALOGUED

143

//[name] JCLLIB ORDER=(Library[,library] …)

//MYLIB JCLLIB ORDER=(BE05.JCL.PROCLIB,// BE05.JCL.PROCLIB1)

144

//[name] INCLUDE MEMBER=name

//BE05JCL JOB . . . . .//LIBRARY JCLLIB ORDER=BE05MST.JCL.PROCLIB//STEP1 EXEC PGM=PRINT//DD1 INCLUDE MEMBER=SYSOUT1//STEP2 EXEC PGM=DELETE . . .

145

INVOKING A PROCEDURE

// EXEC Procname

// EXEC PROC=procname

146

SPECIFYING AN INSTREAM PROC.

PROC•

PEND

147

Procedure C://C PROC//C51 EXEC PGM=GHI

//C PEND

Procedure B://B PROC//B51 EXEC PROC=C .//B52 EXEC PGM=DEF//B PEND

Procedure A://A PROC//AS1 EXEC PROC=B .//AS2 EXEC PGM=ABC .//A PEND

Job Stream://JOB1 JOB . . . . .//STEP1 EXEC PROC=A .//STEP2 EXEC PGM=JKL . . .

148

//JOB1 JOB . . . . . level 0

//CS1 EXEC PGM=GHI level 3

.

//BS2 EXEC PGM=DEF level 2

.

//AS2 EXEC PGM=ABC level 1 .

//STEP2 EXEC PGM=JKL level 0

149

MODIFYING A PROCEDURE

PROC

REVISED

150

OVERRIDING DD STATEMENTS IN A PROCEDURE

//MYPROC PROC

//STEP1

//IN DD DSN=A// PEND

// EXEC MYPROC//STEP1.IN DD DSN=B

151

ORDERING THE OVERRIDE STATEMENTS

//MYPROC PROC//S1 EXEC ---------//DD1 DD ----------//S2 EXEC ----------//DD2 DD ----------//RUN EXEC MYPROC//S1.SYSIN DD *

----------- -----------//S2.SYSIN DD * ------------ -----------/*

152

SYMBOLIC PARAMETERS

//MYPROC PROC U=SYSDA

//DD1 DD DSN=……., UNIT= &U,…….//DD2 DD DSN=……., VOL=SER= &P,…..

// EXEC MYPROC,P=EDPAK3

153

//[name] SET symbolic-parameter=value

//SP1 SET PARM3=‘3400-6’

//SP2 SET PARM4=123456

154

MODIFYING THE EXEC STATEMENT

PROC=_______

COND=

REGION=

155

Topic 7. Introduction to DFSMS

Objectives

The purpose of this unit is to introduce SMS concepts.

156

STORAGE MANAGEMENT SUBSYSTEM

NON SMS

193

1D3

5CB

240 978

3350

3380

3380J

3380

3380K

3380E 3380

3380JMVSRES

3380KPAST

CACHE

DSN=EndDISP=UserUNIT=VOL=SER=DCB=TRKCYLRECFMLRECLEXPDTRETPD

PERFORMANCE UTILIZATION

DC

SC

MC

DSN=

DISP=

SMS

FUTURE

DASDSTORAGE

157

DATASET

WHAT ARE THE SERVICES ?

SELECTION ROOTWHATDOESITLOOKLIKE

WHATARETHESERVICES

SELECTIO RN O U T I N E

DATACLASS

MANAGEMENT CLASSSTORAG CE L A S S STORAGE GROUP

SELECTION ROUTINE

SELECTION R O U T I N E

WHERE IS IT PLACED ?

158

WHAT DOES IT LOOK LIKE ?

Data Class Attributes----Data set type----Record length

----Space Information----EXPDT / RETPD

----VSAM Keys----VSAM subparameters

DATACLASS

D C

159

WHAT IS THE SERVICE ?

Storage Class Attributes

---- Performance

---- Continuous availability

STORAGECLASS

SC

160

HOW IS IT MANAGED ?

M CManagement Class Attributes

----Recovery capability

----Space occupancy

161

WHERE IS IT PLACED ?

Storage Group Attributes

----- Volume management

NOT visible to users !

S C

162

Automatic Class Selection Environment

DATACLASSROUTINE

STORAGECLASSROUTINE

ManagementCLASSROUTINE

STORAGECLASSROUTINE

SC=xxx

notsystemmanaged

sc=null

systemmanaged

163

SMS can manage

• PHYSICAL SEQUENTIAL• PARTITIONED• VSAM• BDAM• GENERATION DATA GROUPS (GDG)• TEMPORARY• VIO

164

Overview JCL Changes

* PROMOTED KEYWORDS

* SUPPORT OF SMS SPECIFICATIONS

* NEW WAYS TO REFERENCE ‘MODEL’

* VSAM DEFINITIONS VIA JCL

165

New JCL Keywords

ALL DATA SETS SMS MANAGED

DATACLASRECORGAVGRECKEYOFFLIKEREFDDSECMODEL

STORCLASMGMCLAS

166

JCL Data Class

* SPECIFIES DATA CLASS FOR NEW SYSTEM - or NON-SYSTEM -MANAGED DASD DATA SETS

* DATA CLASS IS A NAMED LIST OF DEFAULT ALLOCATION ATTRIBUTES RECORG KEYOFF RECFM RETPD / EXPDT LRECL SPACE KEYLEN VOLUME COUNT

VSAM OPTIONS (IMBED , REPLICATE , CISIZE , FREESPACE, SHAREOPTIONS)

167

JCL Storage Class

* SPECIFICATIONS STORAGE CLASS FOR NEW SYSTEM- MANAGED DATA SETS

* STORAGE CLASS IS A NAMED LIST OF OBJECTIVES PERFORMANCE AVAILABILITY

* REQUEST FOR SERVICE, NOT FOR RESOURCE

168

JCL Management Class

* SPECIFIES MANAGEMENT CLASS FOR NEW SYSTEM- MANAGED DATA SETS

* NAMED LIST OF AVAILABILITY AND SPACE MANAGEMENT ATTRIBUTES

------PARTIAL RELEASE ------BACKUP ------RETENTION ------MIGRATION

* SPECIFICATIONS DIRECT ‘DFHSM’ ACTIVITIES

169

JCL SPACE INFORMATION

* SPACE= ( , ( , ,dir) ) OVERIDE NUMBER OF DIRECTORY BLOCKS SPECIFIED IN DATA CLASS

* AVGREC = U /K /M SPECIFIES SCALE MODIFICATION TO AVERAGE RECORD LENGTH REQUEST , SPACE = ( reclgth ,( prim -qty , sec - qty)) -- U -- multiply by 1 -- k -- multiply by 1024 -- M -- multiply by 1048576

170

NEW JCL LIKE PARAMETER

* SPECIFIES PROPERTIES OF AN EXISTING CATALOGED DATA SET TO BE USED TO ALLOCATE A NEW DATA SET

RECORG LRECL RECFM KEYLEN SPACE KEYOFF* REPLACES DCB = dsname* INCONSISTENCIES BETWEEN JCL AND TSO LIKE

----BLKSIZE, EXPDT COPIED FOR TSO LIKE ,NOT NOT SO FOR JCL LIKE

----JCL LIKE COPIES DIRECTORY SIZE, TSO PROMPTS FOR IT

171

VSAM DATA SET via JCL

//NEWVSAM DD DSN =MY.NEW.VSAM,DISP=(NEW,CATLG)// LRECL=120,// SPACE=(120,(1000,500)),// AVGREC=K,// RECORG=KS,// KEYLEN=17,// KEYOFF=6

172

CATALOGING PERMANENT SMS DATA SET

* ALL PERMANENT SMS DATA SETS ARE

* CATALOGED AT TIME OF SPACE ALLOCATION * UNCATALOGED WHEN DATA SET IS SCRATCHED

* ALLOCATION OF NON-VSAM DATA SETS CAUSES

* THE CREATION OF A BCS ENTRY * THE CREATION OF A VVDS ENTRY

* UNCATALOGED DATA SETS CANNOT BE SMS MANAGED

173

CATALOGING TEMPORARY VSAM DATA SETS

* CATALOGING TEMPORARY VSAM DATA SETS ----NO BCS ENTRY IS CREATED ----ONLY VVR(s) ARE BUILT ----STANDARD TEMPORARY DATA SET NAME

* LIMITATIONS ----NO AIX or PATH SUPPORT ----SHAREOPTIONS(1) ONLY ----SINGLE VOLUME ONLY

* TEMPORARY NON-VSAM DATA SETS REMAIN UNCATALOGED

174

GDG PROCESSING

* SMS-managed GDG consists of cataloged sequential and / or direct data sets residing on DASD volumes* SMS-managed GDG may contain both SMS-and non-SMS- -managed GDGs* GDSs in a GDG can have like or unlike data set attributes and data set organisations* SMS affects GDG processing due to its implementation of mandatory cataloging.Changes are : ---Allocation without pattern DSCB ---Allocation of new generation ---AMS ALTER command usage ---Disposition processing of new generations

175

Topic 8. Open Edition

Objectives

The purpose of this unit is to introduce the student to edition

176

FILE NAMING CONVENTIONS

C program . . .open(char “ / dir1 /DIR2 / FILEname “, Int O_RDONLY);

ROOT DIRECTORY

DXFILE1FILE2

DIR2

FILEname

177

FILE NAMING CONVENTIONS WITH PATH =

OPENEDITION DD STATEMENT://DD1 DD PATH=‘/ dir1 / DIR2 / FILEname// . . ROOT DIRECTORY

DX

FILE1FILE2

dir1

dir2

FILEname

178

NEW JCL KEYWORDS

New JCL keywords for HFS files:

PATH = HFS file namePATHOPTS= HFS file access and status modePATHMODE= HFS file access attributesPATHDISP= HFS file disposition

Commands and macros affected by this change:

ALLOCATE TSO / E CommandDYNALLOC Macro

179

MODIFIED JCL PARAMETERS

Modified JCL Parameter :

DSNTYPE =[HFS] {PIPE}

180

DATA ACCESS

TRADITIONAL

2) DCB

DCB a.b.c

A.B.C1)dname

//SYSPRINT DD DSN =A,B,C

DDNAME

POSIX2)FILEDESCRIPTOR

23=/a/b/c

a/b/c1) PATHNAME

MYDATA = a/b/c

Symbolic link

181

NON-POSIX CALLABLE SERVICES

RMF

1101

UMTUNMOUNT()

MNTMOUNT()

MKNMKNOD()

CHACHAUDLTL()

FCHFCHAUDIT()

QSEQUIESCE()

UQSUNQUIESCE()

GMNW-GETMNTENT()

STFW-STATFS()

MPC

MVS

LPA

EXMexecmvs()

MSDmvsunsigsetup()

MSSmvssigsetup()

PTRptrace()

RMG resource()

HW

IOClootl()

182

BATCH ENVIRONMENT

MVS batct job :

START OF JOB

MVS BATCH PROGRAM

OPEN MVS BATCH PROG.

MVS BATCH PROGRAM

END OF JOB

//OPENBATC JOB

//S1 EXEC PGM=MVSPROG1

//S2 EXEC PGM=BPXBATCH,// PARM=‘pgm cprog a1 a2’

//S3 EXEC PGM=MVSPROG2

//

183

JCL EXAMPLE - SHELL SCRIPT

Open MVS batch execution of a shell script :

//OMVSSHELL JOB USER=username//OMVSEXEC EXEC PGM=BPXBATCH//STDIN DD PATH=‘/DIR1/DIR2/SHELL.SCRIPT//STDOUT DD PATH=‘DIR1/DIR2/STD.OUTPUT’,// PATHOPTS=(OWONLY,OCREATE),// PATHMODE=(SIRWXV),// PATHDISP=KEEP//STDERR DD PATH=‘DIR1/DIR2/STD.ERROR’,// PATHOPTS=(OWONLY,OCREATE),// PATHMODE=(SIRWXV),// PATHDISP=KEEP

184

JCL EXAMPLE - C PROGRAM

OPEN MVS BATCH EXECUTION OF C PROGRAM

//OMVSCPGM JOB USER=username//OMVSEXEC EXEC PGM=BPXBATCH,// PARM=‘pgm cporg a1 a2’//STDOUT DD PATH=‘/DIR1/DIR2/STD.OUTPUT’,// PATHOPTS=(OWONLY,OCREATE),// PATHMODE=(SIRWXV),// PATHDISP=KEEP//STDERR DD PATH=‘DIR1/DIR2/STD.ERROR’,// PATHOPTS=(OWONLY,OCREATE),// PATHMODE=(SIRWXV),// PATHDISP=KEEP//