JCL Faq's

JCL

Question: Can you execute a PROC from another PROC?

Answer: Nesting is allowed. I think upto 15 levels. (MVS/EXA Not Allowed But Z/Os Can Possible)

Question: What is a DD statement?

Answer: Data Definition

Question: Can you execute a PROC from another PROC?

Answer: I did not know the answer and my interviewer said NO. Later I tried and executed PROC from a PROC, three levels deep. Manuals do not state any limit on PROC calling PROC, or nesting.

Question: What will happen if you attempt to restart a job in the middle of a JCL // IF .... // ENDIF?

Answer: Job will fall through to the ENDIF (not executing any steps), then resume execution with the first step AFTER the // ENDIF.

Question: What Is A File?

Answer: A FILE IS A COLLECTIVE GROUP OF RECORDS. THE NUMBER OF RECORDS ON A FILE DEPENDS ENTIRELY ON THE APPLICATION ASSOCIATAD WITH THE FILE. FILES MAY CONTAIN A FEW RECORDS, THOUSANDS, OR EVEN MILLIONS OF RECORDS.

Question: How Many Positonal Parameters Are There In Jobstatement?

Answer: THER ARE TWO POSITION PARAMETERS IN JOB STATEMENT.

Question: What are three parameters you can specify on Job statement as well as on exec stmt ?

Answer: Time , Region and Cond parameters

Question: How can you trap abends in the JCL?

Answer: Use IF ABEND statement in the JCL.

Question: How do you restart a step in JCl?

Answer: Use RESTART=step name.

Question: how do you pass parameters to tne program as the job is being executed ?

Answer: by using 'parm' parameter in exec statement. the value mentioned here should be declared in linkage section in the program and process thru procedure division. this technique is very useful when you do not know the parametrs at the time of coding the programs.

Question: Why do you use a controlcard?

Answer: A controlcard can be a member of a pds or a sequential dataset and is used for storing the date fields, Definitions of VSAM files....etc. You use controlcard because you cannot use a instream procedure in a procedure.Generally you will be calling a Proc from your Jcl and you cannot code instream procedure in the Proc and so you will point to the dataset which is called controlcard.

Question: How do you submit JCL via a Cobol program? For the above question the solution is as follows..

Answer: In your JCL define as//JOBA JOB 1111,JOB1//STEP01 EXEC PGM=PROG1//ddname DD SYSOUT=(*,INTRDR)....and your COBOL(PROG1) should look like thisSELECT JCL-FILE ASSIGN TO ddname.Open this file and write the JCL statements into this file.Example.MOVE '//TESTJOB JOB 1111,VISVEISH' TO JCL-REC.MOVE '//STEP01 EXEC PGM=IEFBR14' TO JCL-REC.and close this file.Then TESTJOB will be submitted.

Question: How do you submit a JCL under CICS environment ?

Answer: pass all the jcl codes to a COBOL variable(should be declare using OCCURS clas) and the write the line one by one to the spool using CICS commands like SPOOLClose SPOOLOpen SPOOLWrite . For more help reffer CECI of CICS or CICS manual

Question: What is the parameter to be passed in the job card for the unlimited time , irrespective of the job class

Answer: TIME=1440

Question: Definition of COND p-r in JCL and a correction to a previously posted question

Answer: COND is a condition parameter, consists of 2 subparameters, 1st - return code from the previous step, 2nd - condition. If COND is true, the step on which COND is coded will be BYPASSED.

Question: Q) WHAT IS MEANT BY S07C AND S0C30 SYSTEM ABEND CODES(QUESTION ASKED BY Mr. PRAVEEN)?

Answer: A) S0C7 - Data exception error - you will get it whenever you are trying to move the low values or spaces into the numeric field, or compare the numeric fields with low values, or try to do some arithmetic operations on the low values. To avoid this you have to always initialize the numeric fields otherwise they will contain the low values.S0C 30 - I have never heard of it, let you know if I come accross it.

Question: How to pass the temp dataset form one JOB step to another?

Answer: By specifying the DISP as PASS for the temp dataset

Question: What is a COND parameter in JCL?

Answer: COND means condition parameter. It is compared with systemreturn code of previous step.//step1 exec pgm=abcd//step2 exec pgm=xyz, cond=(4,lt)step2 will be executed when system return code of step1 isless than 4.

Question: WRITE A JCL TO EXECUTE A JOB BY 7 A.M ON JAN 20,1986 ?

Answer: THE code IS : //*MAIN DEADLINE=(0700,B,012086)

Question: HOW MANY TYPES OF LIBRARIES ARE THERE IN JCL ?

Answer: LIBRARIES ARE OF THREE TYPES.1.SYTEM LIBRARIES: SUCH AS SYS1.LINKLIB2.PRIVATE LIBRARIES: SPECIFIED IN A JOBLIB OR STEPLIB DD STATEMENTS.3.TEMPORARY LIBRARIES:CREATED IN A PREVIOUS STEP OF THE JOB.

Question: WHAT U MEAN BY INCLUDE STATEMENT IN JCL ?

Answer: AN INCLUDE STATEMENT IDENTIFIES A MEMBER PF A PDS OR PDSE THAT CONTAINS.THIS SET OF JCL STATEMENTS IS CALLED AN INCLUDE GROUP.THE SYSTEM REPLACES THE INCLUDE STATEMENT WITH THE STATEMENTS IN THE INCLUDE GROUP.

Question: THE MAXIMUM NUMBER OF IN-STREAM PROCEDURE YOU CAN CODE IN ANY JCL IS ?

Answer: 15.

Question: What you mean by skeleton JCl?

Answer: Jcl which changes during run time ie the values for the jcl such as pgm name ,dd name will change .ie same jcl can be used for various job, equvalent to dynamic sql...

Question: How do you submit a JCL under CICS environment ?

Answer: Edit the JCL in Extra partition TDQ and submit the same using some system command (not sure) under CICS subsystem. This is what i think, please clarify....

Question: what is jcl

Answer: it is interface between operating system(mvs) & application program. when 2 related programs are combined together on control statements is called job control language

Question: What is the max blocksize for a Tape file?

Answer: It is 32,760.Based on that we can calculate effecient number of Records in a Block

Question: What are the basic JCL Statements for a Job?

Answer: 1.JOB : Idenfies a job and supplies accounting info 2.EXEC : Identifies a job step by indicating the name of the program to be executed. 3.DD : Identifies a data set to be allocated for the job step 4.Delimiter (/*): Marks the end of an in-stream dataset 5.Null(//):Marks the end of a job 6.Comments(//*): Provides Comments 7.PROC : Marks the beginning of a procedure 8.PEND : Marks the end of a procedure 9.OUTPUT: Supplies options for SYSOUT processing.

Question: What does the statements: typrun=scan and typrun=hold doin a JCL statement

Answer: typrun=scan checks the JCL for errors, typrun=hold holdsthe job until further notice.

Question: Which of the following is Online transaction? CICS, DB2 and JCl

Answer: CICS

Question: How many PERFORM's are there in COBOL-II?

Answer: 5

Question: which is the most widely used batch performance monitor for DB2?

Answer: DB2PM

Question: What is QSAM error usually when it is occurs?

Answer: Usually it is occurs at the time of job submission.

Question: what is the purpose of include statement in a jcl?

Answer: It is used as an alternative for steplib.When we specify the dataset name in include ,it will search in all the datasets specified in the include dataset.

Question: IS IT POSSIBLE TO KNOW THE REMAINING FREE SPACE IN AN CONTROL INTERVAL/CONTROL AREA ONCE AN INSERTION HAS BEEN MADE.

Answer: NOT POSSIBLE

Question: what does soc04 error mean?

Answer: this error is faced when we execute the cobol program.the main reason for this error is that a variable is defined with less characters and we are trying to move data which is larger than the actual storage space.

Question: What is JCL

Answer: JCL is Job Control Language and is used for Batch processing. The startup procedures of OS and standard products like CICS etc are written in JCL.

Question: In which table PLAN is registered in ?

Answer: RCT

Question: GDG?

Answer: GDG - group of dataset that are logically or chronologically related, referred by name and a relative generation number - an integer which identifies the generation of a dataset and is coded in parentheses after dataset name. Absolute GDG name - GxxxxVyy, where xxxx-absolute gen.number, yy-version number. Can be sequential, direct, partitioned. (VSAM - no). Must always be cataloged. Advantage - all datasets have the same name and system keeps track of adding new and retaining previous generations and deleting oldest successive generation. To create a GDG we create a GDG index in the system catalog with IDCAMS utility and then a model (prototype, DSCB) on the same volume to supply DCB information. Empty - when limit is reached all members are removed from the index, otherwise-only oldest. Scratch-removed members are uncataloged & deleted, otherwise - removed & uncataloged, but remain in the system (not members of GDG any more). GDG number is updated at the end of the job. If number is not specified all generations will be processed from the beginning

Question: what is jcl

Answer: it is used to commmunicate between the terminals. (OS to App.Prg)

Question: what do you mean By spooling? Expand SPOOL?

Answer: This is managed by JES.This is used for Queuing the Outputs that are intended for Printing and are first stored in SPOOLDASD. This can be managed Using

Question: How many Instream-Procedures(procs) can be Coded in a single Job?

Answer: The Answer is: 15

Question: For How Long A Job Can Be Executed Continueously In A Mainframe

Answer: 248 DAYS

Question: How many divisions are there in JCL-COBOL?

Answer: SIX

Question: Max. No of DD statements in a job

Answer: 3273

Question: How Much Space Os Allocates When You Create A Ps Or Pds?

Answer: 56 KB

Question: Min No Of Dataset Names(Pds) In One Directory Block?

Answer: SIX

Question: The Maximum Number Of Steps In A Job?

Answer: 255

Question: How much is memory space involved, when we code BLOCKSIZE,TRK & CYL

Answer: One block constitutes 32KB of formatted memory/ 42KB of Unformatted memory,6 blocks makes one Track & 15 Tracks makes one cylinder.

Question: Corrections in the answers.

Answer: I think the answer for the question by Kyati on march 19/1998 about Maximum number of extents in secondary allocation is 16 & not one.I think there is a missing Diposition parameter for the question by Anon on march 11\1998-- Please add PASS.

Question: What is DSNDB06 ?

Answer: This is the Place where DB2 Catalog resides

Question: What is the use of DSNDB07 ?

Answer: This is the area where sorting takes place in DB2

Question: What is the purpose of Identification Division?

Answer: Documentation.

Question: What is JCL?

Answer: job control language

Question: WHAT IS DATACOM DB?

Answer: IT IS A DATABASE USED WITH VSE.

Question: What is a Dummy Utility and what it does ?

Answer: IEFBR14 is a Dummy utility and it is used for the sakeof EXEC PGM= .... statment in JCL[when used it wouldn't perform any task]. e.g. While Allocating a datasetyou don't have to run any utility [this could be done by giving disp=new inDD statment]. But for a PGM name must be given in EXEC statment, it is used.

Question: What 3 guidelines do we have to follow when concatenating DD statements?

Answer: 1. Datasets must be of the same type (disk or tape)2. All datasets must have the same logical record length 3 The dataset with the largest blocksize must be listed first.

Question: On the DD statement, what is the main difference between creating a new sequential flat file and a partitioned dataset?

Answer: SPACE=(n,m) for a sequential file, SPACE=(n,m,p) for a PDS where n, m, and p are numbers. The p designates how many directory blocks to allocate.

Question: What is the difference between IEBGENER, IEBCOPY and REPRO in IDCAMS utlity?

Answer: IEBGENER -- This is a dataset utility for copying sequential datasets which produces a PDS or a member from a sequntial dataset.IEBCOPY -- This is a dataset utility for copying one PDS to another or to merge PDSs.REPRO -- This is for copying sequential datasets. More or less same as the IEBGENER.RAVI

Question: How do you submit JCL via a Cobol program?

Answer: Use a file //dd1 DD sysout=(*,intrdr)write your JCL to this file. Pl some on try this out.

Question: How to execute a set of JCL statements from a COBOL program

Answer: Using EXEC CICS SPOOL WRITE(var-name) END-EXEC command.var-name is a COBOL host structure containing JCL statements.

Question: What is the difference betebeen static call & Dynamic call

Answer: In the case of Static call, the called program is a stand alog program, it is an executable program . During run time we can call it in our called program. As about Dynamic call , the called program is not an executable program it can executed thru the called program

Question: What is the difference between catalouge procedure and In-Stream procedure?

Answer: In Stream procedures are set of JCL statements written between JOB and EXEC statements, start with PROC and end with PEND statement.Mainly used to test cataloge procedures. Cataloged procedure is cataloged on the procedure library and is called by specifying the procedure name on the EXEC statement.

Question: What do you feel makes a good program?

Answer: a program that follows a top down approach. It is also one that other programmers or users can follow logically and is easy to read and understand.

Question: can we browse or edit the GDG dataset if it is a tape entry?

Answer: No ,

Question: What are the maximum and minimum sizes of any CONTROL AREA (VSAM datasets) ?

Answer: Minimum Size : 1 trackMaximum size : 1 cylinder

Question: How To Get Cursor Position From System In CICS Environment ?

Answer: Get It From EIBCURPOS !

Question: How many parameters are there to a DISP statement and what are thier uses.

Answer: There are three(3) parameters. Parameter 1: current data set disposition(new, shr, old, mod) Parameter 2: normal close action for data set (catlg, keep, delete) Parameter 3:abend action for data set (catlg, keep, delete).

Question: What is the error code SOC01 indicate ?

Answer: Operation exception error For eg a dataset open error

Question: WHAT IS COMM?

Answer: COMM - HALF WORD BINARY

Question: What is a procedure?

Answer: A set of precoded JCL that can be modified through the use of parameters or override cards. Note: Procedures can be catalogued or instream.

Question: What is the difference between specifying DISP=OLD and DISP=SHR for a dataset?

Answer: OLD specifies exclusive use of a dataset, SHR allows multiple jobs to concurrently access the dataset Note: When updating a dataset, you would normally use OLD.

Question: What are the three basic types of statements in a jobstream?

Answer: JOB(one per jobstream)EXEC(one or more per job)DD(one or more per jobstep)

Question: What does SYSIN * indicate?

Answer: Instream data follows this card and is terminated when followed by a card containing // or /* in columns 1 and 2.

Question: What are three major types of JCL statements? What are their functions?

Answer: JOB, EXEC, DD. JOB - indicates start of jobstream to the operating system and through parms coded on it, certain details about the job (time, region, message level, job accounting data). EXEC - indicates the start of execution of a particular job step, be that step a program or a proc.DD - is a data definition, which is used to describe the attributes of a data set (name, unit, type, space, disposition).

No comments: