You are on page 1of 10

1. What is the meaning for CICS? Customer Information Control System. 2. What do we do by using CICS?

CICS is normally used for Real-time or Online processing when that particular processing cannot wait for batch processing normally done at the end of the day for most installations. 3. What are the eight steps for a CICS program development? Get the complete specification Get related sourcebooks and subprograms Design the program Update the CICS Tables Code and compile the map definition Code the program Compile the program Test the program. 4. In a CICS development, do you compile the map or program first? The map needs to be compiled first. 5. What is a transaction id or code? A transaction is mostly a four letter unique predefined unit of work, a terminal work will use to invoke a specific map and the associated program. 6. What is a PCT and how it is used?A PCT is a short name for Program Control Table, which contains the trans-id and the associated program which will be invoked when the trans-id is used. 7. What is a PPT and how it is used?A PPT contains a valid list of program names and it also indicates the storage address if the program has already been loaded. CICS uses PPT to determine whether it will load a new copy of the program if the program is invoked. 8. Have you ever heard of SNT in CICS Processing?Yes, it contains the names of all valid users of the system. 9. What is the use of DFHCOMMAREA and where it is located?It helps to transfer data between two transactions and it is located in the LINKAGE SECTION. 10. Are you familiar with CEMT and CSMT functions? What does these transactions do for you?These are normally supervisory functions, where they can be used to cancel tasks running at a different terminals. CSMT is used to update PPT. But I never had much chance to use them. 11. What transaction will you use to debug a CICS Program? CEDF, which means CICS Execution Diagnostic facility. 12. What XCTL and LINK command is used for? XCTL command transfers control to another program without setting up a return mechanism whereas the LINK command transfers control to next logical lower level with a return mechanism 13. Why the EXEC CICS HANDLE command is used?It is used to specify what action the program needs to take when certain exceptional conditions occur.

14. Why the EXEC CICS RETURN command is used?It is used simply to return control to CICS with no option and the terminal session ends. 15. What are the parameters will you use to code a SEND MAP command? SEND MAP(name of the map) MAPSET(name of the mapset which contains the specific map) FROM(specifies the symbolic map) MAPONLY(specifies dataonly needs to be sent) DATAONLY(specifies that only data from the symbolic map needs to be sent) ERASE/ERASEUP CURSOR 16. How do you terminate each CICS commands?EXEC CICS intermediate commands END-EXEC. 17. How do you obtain the storage dump from CICS?CICS automatically adds the storage dump to a special file called dump data set. When the CICS is terminated, the dumps are automatically printed. The DSN can be found from the respective installation personnel. 18. What is the meaning for AEI9 CICS abend?MAPFAIL. 19. What are the following entities represent?EIBAID It is an one character field that indicates which attention key was used for the last RECEIVE command. EIBTRMID This field supplies the name of the terminal running the task. EIBCALEN This field represents the length of the communication area passed to my program. If no commarea is passed, it is set to zero. 20. How do you logoff from a CICS transaction?Blank the screen, then type CSSF LOGOFF. 1. What is trigger level in the context of TDQs? For intrapartition TDQs specify the # records at which ATI happens. not applicable for extra partition TDQs. 2.How do you fire a batch job from a CICS txn ? Define an extrapartition TDQ as an internal reader and write the JCL to it. Terminate the JCL with /*EOF. 3. What is ATI? What kind of TDQ can be used? Automatic Task Initiation. Intra partition TDQ. 4. Do you require a table entry for a TSQ? If recovery is needed. 5. Is there any entry for TSQs in CICS tables? Yes in the DFHTST. 6. What is the use of DCT?

Destination Control Table used to define TDQs 7. What is ENQ, DEQ ? Task control commands to make resources serially reusable. 8. I have TSQ with 15 items. I want to delete the 10th item. How do I do that? 9. Can you issue SQL COMMIT from a CICS program? Yes. 10. What is the other way of terminating a transaction? EXEC CICS SYNCPOINT. Assuming it is a LUW. This will not end the Xn. 11. What is an ASRA abend ? Any data exception problem SOC7, SOC4 etc. 12. What is an AEY9 abend ? DB2/IDMS not up. 13. What are the situations under which NEWCOPY is required ? When a program has been used in CICS atleast once and then changed and recompiled. 14. What is 2 phase commit? What is EXEC CICS RETRIEVE ? Used by STARTed tasks to get the parameters passed to them. 15. Name some important fields in the EIB block ? EIBRESP, EIBCALEN, EIBRRCDE, EIBTASK, EIBDATE, EIBTIME 16. Can you use DYNAMIC calls in CICS ? Yes, the called routine must be defined in PPT and the calling program must use CALL identifier.. 17. How do you handle errors in CICS pgms ? Check EIBRESP after the call or use the HANDLE condition. 18. Suppose pgm A passes 30 bytes to pgm B thru commarea and pgm B has defined its DFHCOMMAREA to be 50 bytes . Is there a problem ? Yes, if B tries to access bytes 31-50. 19.When an XCTL is done, does the tranid change ? Is a new task created ? Does it cause an implicit SYNCPOINT to be issued ? No, No, Yes. 20. How do you execute a background CICS txn ? With a START or ATI. 21. Can a CICS region be attached to more than one DB2 subsystem ?

22. What determines the DB2 subsystem to which a particular CICS region is attached ? 23. What is the DSNC transaction used for ? 24. How do you handle error in a CICS program? 25. What is the difference between START and XCTL ? START is used to start a new task. It is a interval control command. XCTL is used to pass control to a program within the same task. It is a program control command. 26. What is the usage of language in the PPT entry? Language interface and call parameters??? 27. Can you have CICS code in a copybook? If yes, what happens during compilation? Yes. Needs to be preprocessed. 28. What is an AICA abend? Runaway Task. 29. How would you resolve an ASRA abend? In COBOL II start with CEBR, and get the offset/instruction. 30. How do I find the name of the CICS region inside my COBOL program? 31. When you do a START, what will the value of EIBCALEN? Zero. 32. How are VSAM files Read in CICS pgms? File Control Commands. Random, Sequential, forward and backward. 33. How will you access a VSAM file using an alternate index? Thru the path. Define path as an FCT and use normal File control commands. 34. How do you rollback data written to an ESDS file? Define the file as recoverable. in cases where records have been inserted into the file, you may need to run a batch program to logically delete the inserted records. 35. I have done a START BROWSE on a VSAM dataset. Can I do another START BROWSE without doing an END BROWSE? No. 36. Can you access QSAM (seq ) files from CICS ? No. 37. Can you access ESDS files from CICS ? Yes. 73. What is CICS ? CICS - Customer Information Control System CICS is a telecommunications monitor software product from IBM. The IBM mainframe

operating systems are batch and time-sharing. CICS supports the development and execution of online applications. It does this by - communicating with terminals - sending and receiving fomatted data - accessing files and database CICS itself is batch job running on the operating system with high priority. CICS does scheduling of programs that run under the CICS region. How do you use extended attributes ? Define EXTATT=YES and the correct terminal type. What are the 3 working storage fields used for every field on the map? Length, attribute and input/output field. How do you protect a field from being overlaid? What is the attribute byte? Defines the display/transmission of field. most cases is an output field from the program. What is MDT? What are FSET, FRSET ? Modified Data Tag. Bit in the attribute byte indicating modification of field on screen. Happens on an input operation. FSET. Sets MDT on to ensure field is transmitted. Happens on an output operation. FRSET. Resets MDT. Until this happens, field continues to be sent. What is the use of DSECT parameter in BMS? Is the parameter to generate a symbolic map. What is effect on RECEIVE MAP when PF key is pressed? Data transmission may happen, PA key is pressed? Data transmission will not happen. Do you receive the attribute byte in the symbolic map? On EOF yes. How do you make your BMS maps case sensitive? Use ASIS What are SEND MAP MAPONLY & SEND MAP DATAONLY ? MAPONLY - to send the map alone, without any data. Eg: used for sending Menu screens. DATAONLY - to send data alone, without sending the screen layout again. Eg: used for refreshing the screen data. What is the difference between a PF key & a PA key ? PF keys wake up the task and transmit modified data, PA keys only wake up the task. Name the macros used to define the following: MAP MAPSET FIELD DFHMSD DFHMDI DFHMDF

Can you use OCCURS in a BMS map? If you do, what are the issues related with its use? Yes. cannot use group by clause??? Can you define multiple maps in a BMS mapset? Yes. How is the storage determined in the symbolic map, if you have multiple maps? Storage for maps redefine the first. This means largest map has to be the first. What is the meaning of BMS length of field = 0? Data was not entered in the field Can you simply check if length = 0 for checking if a field was modified? No, not if ERASE EOF was used. What do you do if you do not want characters entered by the user to be folded to uppercase ? Use ASIS option on RECEIVE. What does the BUFFER option in RECEIVE mean ? Brings the entire datastream from the terminal buffer. What are the steps you go through to a create a BMS executable? Assemble to create CSECT and Link When you compile a CICS program, the (pre)compiler puts an extra chunk of code. Where does it get included and that is it called? What is its length? DFHEIBLK, DFHCOMMAREA. List all the CICS tables and explain their contents. PPT SIT PCT JCT FCT SNT DCT SRT RCT TCT I have written a CICS program. What tables should I setup to run this program? PPT, PCT, (FCT, DCT, RCT (if needed)). In which table would you make an entry for a BMS map? PPT What is the content of the PPT entry? Length, Source, Use count, Lang, Res count DFHRPL number For a CICS-DB2 program, how is the plan referenced? Uses a RCT table. How is dynamic memory allocated within a CICS application program?

Use a GETMAIN What are the restrictions while using GETMAIN and FREEMAIN? What is the use of a TDQ, TSQ? Temporary data stores. How do you read from a TSQ? Temp storage read command If I create a TSQ from one transaction, can I read it from another transaction? Yes. As long as they run in the same region. What are extra partition & intra partition TDQs? Extra partition TDQs are datasets used for communication bn CICS and other CICS/Batch regions. Intrapartition TDQs are queues for communication within regn. What is trigger level in the context of TDQs? For intrapartition TDQs specify the # records at which ATI happens. not applicable for extra partition TDQs. How do you fire a batch job from a CICS txn ? Define an extrapartition TDQ as an internal reader and write the JCL to it. Terminate the JCL with /*EOF. What is ATI? What kind of TDQ can be used? Automatic Task Initiation. Intra partition TDQ. Do you require a table entry for a TSQ? If recovery is needed. Is there any entry for TSQs in CICS tables? Yes in the DFHTST. What is the use of DCT?Destination Control Table used to define TDQs What is ENQ, DEQ ? Task control commands to make resources serially reusable. Can you issue SQL COMMIT from a CICS program? Yes. What is the other way of terminating a transaction? EXEC CICS SYNCPOINT. Assuming it is a LUW. This will not end the Xn. What is an ASRA abend ?Any data exception problem SOC7, SOC4 etc. What is an AEY9 abend ? DB2/IDMS not up. What are the situations under which NEWCOPY is required ?When a program has been used in

CICS atleast once and then changed and recompiled. What is 2 phase commit? What is EXEC CICS RETRIEVE ? Used by STARTed tasks to get the parameters passed to them. Name some important fields in the EIB block ?EIBRESP, EIBCALEN, EIBRRCDE, EIBTASK, EIBDATE, EIBTIME Can you use DYNAMIC calls in CICS ? Yes, the called routine must be defined in PPT and the calling program must use CALL identifier.. How do you handle errors in CICS pgms ? Check EIBRESP after the call or use the HANDLE condition. Suppose pgm A passes 30 bytes to pgm B thru commarea and pgm B has defined its DFHCOMMAREA to be 50 bytes . Is there a problem ? Yes, if B tries to access bytes 31-50. When an XCTL is done, does the tranid change ? Is a new task created ? Does it cause an implicit SYNCPOINT to be issued ? No, No, Yes. How do you execute a background CICS txn ?With a START or ATI. How do you handle error in a CICS program? Same as 36. What is the difference between START and XCTL ? START is used to start a new task. It is a interval control command. XCTL is used to pass control to a program within the same task. It is a program control command. What is the usage of language in the PPT entry?Language interface and call parameters??? Can you have CICS code in a copybook? If yes, what happens during compilation?Yes. Needs to be preprocessed. What is an AICA abend?Runaway Task. How would you resolve an ASRA abend?In COBOL II start with CEBR, and get the offset/instruction. I invoke a transaction from CICS. The program has a code: MOVE DFHCOMMAREA TO WS-AREA. What happens to this transaction? What happens to the other transactions? Junk may get moved in. Will cause Storage violation. When you do a START, what will the value of EIBCALEN?Zero. How are VSAM files Read in CICS pgms? File Control Commands. Random, Sequential, forward and backward. How will you access a VSAM file using an alternate index? Thru the path. Define path as an FCT and

use normal File control commands. How do you rollback data written to an ESDS file?Define the file as recoverable. in cases where records have been inserted into the file, you may need to run a batch program to logically delete the inserted records. I have done a START BROWSE on a VSAM dataset. Can I do another START BROWSE without doing an END BROWSE?No. Can you access QSAM (seq ) files from CICS ?No. Can you access ESDS files from CICS ? Yes. What is CICS ?CICS - Customer Information Control System CICS is a telecommunications monitor software product from IBM. The IBM mainframe operating systems are batch and time-sharing. CICS supports the development and execution of online applications. It does this by communicating with terminals and sending and receiving fomatted data.- accessing files and database CICS itself is batch job running on the operating system with high priority. CICS does scheduling of programs that run under the CICS region.

Q1 - What is MDT ? Ans - Bit in the attribute byte indicating modification of field on screen.If the user keys in any data into the field, it turns the MDT ON indicating that the data is modified. To save transmission time , 3270 terminal sends a field over the TC line only if the MDT is on. Otherwise, the field value is not transmitted. Q2 - What is DFHCOMMAREA ? Ans - DFHCOMMAREA in the Linkage section is used to pass the data in working storage commarea from one to program to another program. It should be defined with as at least one byte long. As the working storage section is freshly allocated for every execution. Q3- What is Execution Interface Block (EIB) ? Ans - EIB is a CICS area that contains information related to the current task, which can be used for debugging the program. The most widely used variables are EIBDATE, EIBTIME, EIBAID, EIBCALEN, EIBCPOSN, EIBRESP, EIBRSRCE (resource), EIBFN (recent CICS command code), EIBTRMID and EIBTRNID. Q4- What are the important tables used in the CICS-DB2 environment ? Ans - CICS manages it's communication with DB2 with special interface modules called CICS/DB2 Attachment Facility. When a CICS program issues a SQL statement, CICS requests the attachment facility to establish a connection with DB2 called a thread. The information about the CICS transaction and DB2 is entered in Resource Control Table (RCT). The plan information is referenced through the RCT Entries. Q5- What are the various commands used to browse through a dataset ? Ans - STARTBR, READNEXT, READPREV and RESETBR. The options used are DATASET, RIDFLD,

RRN/RBA, GENERIC, and KEYLENGTH for the 3 commands, and INTO, LENGTH for READNEXT and READPREV command, and EQUAL/GTEQ for STARTBR only. RESP can be used with any. ENDBR is used to end the browse operation Q6- What is 2 phase commit ? Ans - It occurs when a programmer Issue's an Exec CICS Syncpoint command. This is called a two phase Commit because CICS will first commit changes to the resources under its control like VSAM files, before DB2 changes are committed. Usually CICS signals DB2 to complete the next phase and release all the locks. Q7- What are ASRA,AICA,AEY9 abend ? Ans - ASRA - Any data exception problem SOC7, SOC4 etc AICA - Runaway Task. AEY9 - DB2/IDMS Database is not up. Q8 What are the differences between TSQ and a TDQ ? Ans (1) In Temporary Storage Queues Data is read randomly, While in Transient Data Queues data must be read sequentially. (2) In a TSQ data can be read any number of times as it remains in the queue until the entire Queue is deleted. In TDQ data item can be read once only. To reuse the TDQ it must be closed and reopened. (3) Data can be changed in TSQ, but not in TDQ. (4) TSQ can be written to Auxiliary or Main Storage, while TDQ is written to Disk. Temporary storage is a holding place, while Transient data is always associated with destination. The (5) TSQ name is defined dynamically, while a TDQ name need to be defined in the DCT. Note: An application uses TSQ 's to pass info' from task to task, while a TDQ to accumulate records before processing or send data for external use, such as a print operation or other. Q9- What are Extra partition & Intra partition TDQs ? Ans - Extra-partition TDQ's are datasets used for communication between CICS and other CICS/Batch regions. Intra-partition TDQ's are queues for communication within CICS region. CICS stores the Intrapartition TDQ in a dataset 'DFHNTRA' on the Disk. Extra-partition TDQ doesn't have to be a disk file, it can reside on any device that's a valid QSAM/VSAM. The DCT entry contains the destination-Id, type of TDQ, Destination, Trigger level if needed Q10 How is an Abend handled in a CICS program ? Ans - The HANDLE ABEND command is used to trap and Handle errors. It has 4 possible options and only one of them can be used with this command at a time. The options are Program(...) to transfer control to the program, Label(...) to transfer control to the specified paragraph, Cancel option keeps the earlier Handle Abends from being executed. Reset option will reactivate the Handle Abend commands, which were previously cancelled. Q11 What is Quasi-reentrancy ? Ans - 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.