Read these CICS set of questions to crack your next interview

Must read interview questions for your next interview.

  1. what is difference between call and link ?
    • In case of call , whenever you do changes to the called program you need to compile the calling program also. In case of link , it is not needed .
  2. what are the differences between DFHCOMMAREA and TSQ ?
    • Both are used to save data among tasks.
    • COMMAREA: is private to that transaction only . like every transaction has its own commarea created by cics as soon as the transaction is initiated .
    • TSQ: if qid is known can be accessed by other transactions also commarea length is s9(4) comp ie 65k . but tsq can have any length. commarea is available only during the transaction is running. tsq if created with auxiliary option resides in aux memory and available even if main memory crashes. Normally commarea is used to tranfer data from one task to another while tsq is used widely within the task as a scratch pad.
  3. What is Communication Area?
    • Communication Area is used to pass data between the program and the task.
  4. Which of the following statements correctly describe the syntax of CICS command language?
    • If an EXEC CICS command must be continued onto a second line a hyphen (-) must be coded in column 7 of the continued line.
    • If an EXEC CICS command must be continued onto a second line an ‘X’ must be coded in column 72 of each line to be continued.
    • An EXEC CICS command CANNOT be coded within a COBOL IF statement,between the IF command and the period (.) ending it.
    • The END-EXEC delimiter is optional and never needs to be placed at the end of a CICS command.
    • The options specified within an EXEC CICS command can be in any order.
  5. A CICS program ABENDS with an ASRA ABEND code. What is its meaning?
    • A link was issued to a program whose name does not exist in the PPT (Program Processing Table).
    • A program attempted to use a map that is not defined in the PCT (Program Control Table).
    • A security violation has occurred. The operator is not defined with the proper authority in the SNT (Sign-on Table) to use a particular file.
    • A program interrupt (0C0 or 0C1 or 0C2 or …) has occurred in a CICS program. E) An I/O error has occurred when attempting to use a VSAM file from a CICS program
    • A program interrupt (0C0 or 0C1 or 0C2 or …) has occurred in a CICS program.
  6. Which of the following commands, when issued by 2 different programs running at the same time, will prevent simultaneous use of resource ‘SINGLE’?

    • EXEC CICS PROTECT RESOURCE(‘SINGLE’) LENGTH(6) END-EXEC.
    • EXEC CICS HOLD RESOURCE(‘SINGLE’)LENGTH(6) END-EXEC.
    • EXEC CICS TASK SINGLE(‘SINGLE’) LENGTH(6) END-EXEC.
    • EXEC CICS EXCLUSIVE RESOURCE(‘SINGLE’) LENGTH(6) END-EXEC.
  7. The map shown below is displayed with: EXEC CICS SEND MAP(‘MAP1’) MAPSET(‘MAP1S’) MAPONLY END-EXEC. After the screen is displayed, the operator enters 1 character, the letter ‘X’. Where will the cursor now appear on the screen?
    • MAP1S DFHMSD TYPE=MAP,MODE=INOUT,CTRL=(FREEKB,FRSET),LANG=COBOL, X TIOAPFX=YESMAP1
      DFHMDI SIZE=(24,80)
      DFHMDF POS=(5,1),ATTRB=UNPROT,LENGTH=1
      FIELD2 DFHMDF POS=(5,3),ATTRB=UNPROT,LENGTH=1
      FIELD3 DFHMDF POS=(5,5),ATTRB=(UNPROT,IC),LENGTH=1
      FIELD4 DFHMDF POS=(5,7),ATTRB=ASKIP,LENGTH=1
      FIELD5 DFHMDF POS=(5,9),ATTRB=UNPROT,LENGTH=1,INITIAL=’Z’
      DFHMDF POS=(5,11),ATTRB=ASKIP,LENGTH=1
    • In the field with a POS=(5,1)
    • In FIELD2.
    • In FIELD3.
    • In FIELD4.
    • In FIELD5.
  8.  How can you accomplish breakpoint in interest?
    • U-for unconditional break point, C-for conditional break point, and A-for automatic break point
  9. How many ways are there for initiating a transaction?what are they?
    • There are six ways in initiating a transaction.they are as follows. embedding four character transid on the top left most corner of the screen.
    • Making use of EXEC CICS START TRANSID ( )
    • Making use of EXEC CICS RETURN TRANSID ( )
    • By defining the transid in DCT ( destination control table) to enable ATI (AUTOMATIC TASK INITIATION)
    • Making use of PLT ( program list table)
    • By associating four character transid in PCT (program control table)
  10. Which type of TDQ is read destructive?
    • Intrapartition tdq is read destructive. extrapartition tdq is not read destructive.
  11. The error code AEIY?
    • This is the error code for length, if length of the source data is more than the receiving field, this error will occur. this is the correct answer, previously i mentioned it as program id error. sorry for the wrong information.
  12. WHAT IS THE SIZE OF COMMAREA ?
    • THE DEFAULT COMMAREA SIZE IS 65K.
  13. What is ASRA ABEND in CICS?
    • It occurs when program interuption takes place.e.g.: when alphanumeric string moved to numeric data item OR when arithmetic calculations performed on on numeric data item OR when an attempt made to read an occurance of a table beyond the defind occurances. ISN’T IT?
  14. Very important question: What is a two Phase commit in CICS?
    • This occurs when a programmer Issues a Exec CICS Syncpoint command. this is called two phase because CICS will first commit changes to the resources under its control like VSAM files. and the DB2 changes are committed. Usually CICS signals Db2 to complete the next phase and release all the locks.
  15. Answer to ANON’s question, difference between TSQ & TDQ
    • TDQ is read destructive, TSQ is not. TSQ can be created dynamically, TDQ cannot be created dynamically. TSQ is temporary in nature (i:e it will be deleted when the program finishes execution, unless it is made permanent by making a entry in the Temporary Storage Table), TDQ is not. Hope this will suffice
  16. What is ENQ in CICS?
    • If any one want to restrict Trans-Id to single user, enter trans-id with ENQ. It won’t allow any one else to use the same trans-id.
  17. In SYMBOLIC Cursor Positioning after moving -1 to the length field also the cursor is not positioned in that particular field. Give reasons?
    • You have to explicitly specify the word CURSOR between your EXEC CICS and END-EXEC in
  18. What does EIB mean?
    • The EIB is the EXECUTIVE INTERFACE BLOCK. It is not the EXECUTE INTERFACE BLOCK. All TP monitors or transaction processors are know as EXECUTIVEs as they carry out process on behalf of a program module. CICS and DB2 are executives.
  19. How many exceptional condition can be given in a HANDLE CONDITION?
    • Max. of 12 exceptional conditions can be given in a single HANDLE CONDITION.
  20. I just wanted to add something to the answer given by Brian on June 25, 1998 Question: What command do you issue to delete a record in a transient data queue ?
    • READQ TD, the read is destructive. Yes it is correct but there is a restriction. U can delete the records sequentially.. For example if one want to delete 10 th record directly it is not possible with this..
  21. How do you access the records randomly in TSQ ?
    • By specifying the ITEM option
  22. What command do you issue to delete a record in a transient data queue ?
    • READQ TD, the read is destructive.
  23.  WHAT ARE DIFFERENT WAYS OF INITIATING TRANSACTION IN CICS ?
    • WE CAN INITIATE CICS TRANSACTION
    • BY GIVING TRANSACTION ID
    • BY GIVING CICS START COMMAND
    • AUTOMATIC TASK INITIATION.
  24. What is the difference between LINK and XCTL ?
    • The XCTL command passes control to another program, but the resources requested by the first program may still be allocated. A task does not end until a RETURN statement is executed. While in LINK command, program control resumes its instruction following the LINK parameter. The disadvantage of LINK is that it requires that both the calling program and the called program remain in main memory even though both are no longer needed.
  25. What is the difference between CICS Program Control Table (PCT) and CICS Processing Program Table (PPT) ?
    • PCT contains a list of valid transaction ID. Each transaction ID is paired with the name of the program ,CICS will load and execute when the transaction is invoked. On the other hand, PPT indicates each program’s location which pertains to a storage address if the program has already been loaded or a disk location if the program hasn’t been loaded. PPT will also be used to determine whether it will load a new copy of the program when the transaction is invoked.
  26. What are the 3 common ways to create maps?
    • The first way is to code a physical map and then code a matching symbolic map in your COBOL program. The second way to create a physical map along with a matching symbolic map is to code only the physical map using the &SYSPARM option, CICS will automatically create a member in a COPY library. And the third way is to use a map generator such as SDF (Screen Definition Facility)
  27. What is Quasi-reentrancy?
    • There are times when many users are concurrently using the same program, this is what we call Multi Threading. For example, 50 users are using program A, CICS will provide 50 Working storage for that program but one Procedure Division. And this technique is known as quasi-reentrancy
  28. What is the difference between a physical BMS mapset and a logical BMS mapset?
    • The physical mapset is a load module used to map the data to the screen at execution time. The symbolic map is the actual copybook member used in the program to reference the input and output fields on the screen.
  29. How To Set MDT (Modified Data Tag) Through Application Program?(Dynamically) ?
    • You have to move the following macro DFHBMFSE to the Attribute field of that particular Variable.
  30. What CICS facilities can you use to save data between the transactions?
    • COMMONAREA, TSQ & TDQ.
  31. How would you release control of the record in a READ for UPDATE?
    • By issuing a REWRITE, DELETE, or UNLOCK command or by ending the task.
  32. How would you release control of the record in a READ for UPDATE?
    • By issuing a REWRITE, DELETE, or UNLOCK command or by ending the task.
  33. What is the difference between a RETURN with TRANSID and XCTL ?For example prog. A is issuing REUTRN with TRANSID to prog B. Prog A. is issuing XCTL to prog B ?
    • In RETURN with TRANSID the control goes to the CICS region and the user have to transfer the control to prog. B by pressing any of the AID KEYS. In XCTL the control is directly transfer to prog.
  34. What is the maximum number of exceptions that can be specified with a single HANDLE CONDITION command in CICS ?
    • SIXTEEN (16)
  35. WHAT WILL BE THE LENGTH OF THE EIBCALEN, IF THE TRANSACTION IS USED TO CICS FIRST TIME?
    • THE LENGTH WILL BE 0(ZERO).
  36. WHAT IS DFHEIBLK?
    • DFHEIBLK is Execute Interface Block. It is placed in the linkage section automatically by CICS translator program. It must be the first entry in linkage section. CICS places values prior to giving control to the program and we can find almost any information about our transaction.
  37. What is the difference between the XCTL and LINK commands?
    • The LINK command anticipates return of control to the calling program, the XCTL command does not. Return to the calling program will be the result of the CICS RETURN command, specifying TRANSID(name of the calling program).
  38. What CICS command would you use to read a VSAM KSDS sequentially in ascending order?
    • First issue a STARTBR(start browse), which will position the browse at the desired record. Retrieve records by using subsequent READNEXT commands. Indicate the end of sequential processing with the ENDBR command. If the generic key is specified in the STARTBR command positioning in the file will be before the first record satisfying the generic key. For reading in descending order use the READPREV instead of READNEXT.
  39. What is the difference between pseudo-conversational and conversational?
    • Pseudo-conversational will start a new task for each input. By coding a CICS RETURN command specifying TRANSID(itself). Conversational will have an active task during the duration of the data entry.
  40. What is the COMMAREA(communications area)?
    • An area used to transfer data between different programs or between subsequent executions of the same program. Needs to be defined in the Linkage Section.
Advertisements

Author: Srini

Experienced software developer. Skills in Development, Coding, Testing and Debugging. Good Data analytic skills (Data Warehousing and BI). Also skills in Mainframe.