Some of the more common CICS abends are briefly described below. These are only brief descriptions and do not cover all possible reasons.
This is the most common abend in CICS. It indicates a Program Check Exception, roughly equivalent to having an S0C7 in a batch program. Check for spaces in a packed decimal numeric field and changes to the file and record layouts.
There are numerous abends that start with AEI or AEY. They indicate that an exception has occured, and RESP (or NOHANDLE) is not is use. The last character indicates the exact error
This abend usually occurs if your program is looping. There are CICS parameters that determine how long a task can run without giving up control. The ICVR parameter in the CICS SIT table can be used to specify a value for all tasks running in CICS, or you can specify a RUNAWAY value when you define a transaction . If a program is looping then you may not get an AICA abend, because the timer can be reset when certain events occur, eg some EXEC CICS commands may reset the timer to zero.
These abends indicates that the task was purged. The task may have been purged by someone issuing a CEMT command to purge the task, or by CICS because the Deadlock timeout limit has been exceeded or because there was not enough virtual storage available to run all the tasks in CICS (Short on Storage)
A program was not found or was disabled. Check the transaction definition to see if the program name was misspelled. Check that the program is enabled. Check that the program is in an appropriate Load Library (ie one defined to the current CICS system).
These abends indicate that a timeout of the task occurred. This may be due to a deadlock.
The specified map was not found in the specified mapset. Check that you have not misspelled the map name.
The Execute Interface Block (EIBLK) contains a variable called EIBFN.This contains a value that tells you what CICS command was last executed. This value can be displayed as part of an error message, to aid in the debugging of your code or when an exception condition occurs
Code Command 0202 ADDRESS 0204 HANDLE CONDITION 0206 HANDLE AID 0208 ASSIGN 020A IGNORE CONDITION 020C PUSH 020E POP 0210 ADDRESS SET 0402 RECEIVE 0404 SEND 0406 CONVERSE 0408 ISSUE EODS 040A ISSUE COPY 040C WAIT TERMINAL 040E ISSUE LOAD 0410 WAIT SIGNAL 0412 ISSUE RESET 0414 ISSUE DISCONNECT 0416 ISSUE ENDOUTPUT 0418 ISSUE ERASEAUP 041A ISSUE ENDFILE 041C ISSUE PRINT 041E ISSUE SIGNAL 0420 ALLOCATE 0422 FREE 0424 POINT 0426 BUILD ATTACH 0428 EXTRACT ATTACH 042A EXTRACT TCT 042C WAIT CONVID 042E EXTRACT PROCESS 0430 ISSUE ABEND 0432 CONNECT PROCESS 0434 ISSUE CONFIRMATION 0436 ISSUE ERROR 0438 ISSUE PREPARE 043A ISSUE PASS 043C EXTRACT LOGONMSG 043E EXTRACT ATTRIBUTES 0602 READ 0604 WRITE 0606 REWRITE 0608 DELETE 060A UNLOCK 060C STARTBR 060E READNEXT 0610 READPREV 0612 ENDBR 0614 RESETBR 0802 WRITEQ TD 0804 READQ TD 0806 DELETEQ TD 0A02 WRITEQ TS 0A04 READQ TS 0A06 DELETEQ TS 0C02 GETMAIN 0C04 FREEMAIN 0E02 LINK 0E04 XCTL 0E06 LOAD 0E08 RETURN 0E0A RELEASE 0E0C ABEND 0E0E HANDLE ABEND 1002 ASKTIME 1004 DELAY 1006 POST 1008 START 100A RETRIEVE 100C CANCEL 1202 WAIT EVENT 1204 ENQ 1206 DEQ 1208 SUSPEND 1402 WRITE JOURNALNUM 1404 WAIT JOURNALNUM 1602 SYNCPOINT 1802 RECEIVE MAP 1804 SEND MAP 1806 SEND TEXT 1808 SEND PAGE 180A PURGE MESSAGE 180C ROUTE 180E RECEIVE PARTN 1810 SEND PARTNSET 1812 SEND CONTROL 1C02 DUMP 1E02 ISSUE ADD 1E04 ISSUE ERASE 1E06 ISSUE REPLACE 1E08 ISSUE ABORT 1E0A ISSUE QUERY 1E0C ISSUE END 1E0E ISSUE RECEIVE 1E10 ISSUE NOTE 1E12 ISSUE WAIT 1E14 ISSUE SEND 2002 BIF DEEDIT 4802 ENTER TRACENUM 4804 MONITOR 4A02 ASKTIME ABSTIME 4A04 FORMATTIME 5602 SPOOLOPEN 5604 SPOOLREAD 5606 SPOOLWRITE 5610 SPOOLCLOSE 5E06 CHANGE TASK 5E22 WAIT EXTERNAL 5E32 WAITCICS 6A02 QUERY SECURITY 6C02 WRITE OPERATOR 6C12 ISSUE DFHWTO 7402 SIGNON 7404 SIGNOFF 7406 VERIFY PASSWORD 7408 CHANGE PASSWORD 7E02 DUMP TRANSACTION
Question: what is difference between call and link ? Answer: 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 .
Question: what are the differences between dfhcommarea and tsq ? Answer: both are used to save data among tasks. but 1. commarea is private to that transaction only . like every transaction has its own commarea created by cics as soon as the transaction is initiated . however tsq , if qid is known can be accessed by other transactions also 2. commarea length is s9(4) comp ie 65k . but tsq can have any length.3. 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.4.normally commarea is used to tranfer data from one task to another while tsq is used widely within the task as a scratch pad.
Question: What is Communication Area? Answer: Communication Area is used to pass data between the programmer between the task.
Question: Which of the following commands, when issued by 2 different programs running at the same time, will prevent simultaneous use of resource ‘SINGLE’? Answer:
Question: How can you accomplish braykpoint in intertest? Answer: U-for uncondishional braykpoint, C-for condishional braykpoint,and A-for automatic braykpoint
Question: how many ways are there for initiating a transaction?what are they? Answer: There are six ways in initiating a transaction.they are as follows.
Question: which type of TDQ is read destructive? Answer: intrapartition tdq is read destructive. extrapartition tdq is not read destrctive.
Question: The error code aeiv? Answer: 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.
Question: WHAT U MEAN BY AEIV ? Answer: THIS IS THE ERROR CODE GIVEN BY THE SYSTEM ,IT MEANS PROGRAM ID ERROR.
Question: What is ASRAABEND in CICS? Answer: It occurs when program interuption takes place.e.g.: when alphanumeric string moved to numeric data itemOR when arithmetic calculations performed on nonnumeric data itemOR when an attempt made to read an occurance of a table beyond the defind occurances.
Question:What is a two Phase commit in CICS? Answer: 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.
Question: Answer to ANON’s question, diference between TSQ & TDQ Answer: 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
Question: What is ENQ in CICS? Answer: 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.
Question: In SYMBOLIC Cursor Positioning after moving -1 to the length field also the cursor is not positioned in that particular field.Give reasons? Answer: You have to explicitly specify the word CURSOR between your EXEC CICS and END-EXEC in the program.
Question: What does EIB mean? Answer: 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 excutives.
Question: How many exceptional condition can be given in a HANDLE CONDITION? Answer: Max. of 12 exceptional conditions can be given in a single HANDLE CONDITION.
Question: What command do you issue to delete a record in a transient data queue ? Answer: READQ TD, the read is destructive. Yes it is correct but there is a restriction.U can deletethe records sequentially.. For example if one want to delete 10 th record directly it is not possible with this..
Question: How do you access the records randomly in TSQ ? Answer: By specifying the ITEM option
Question: What command do you issue to delete a record in a transient data queue ? Answer: READQ TD, the read is destructive.
Question: WHAT ARE DIFFERENT WAYS OF INITIATING TRANSACTION IN CICS Answer: WE CAN INITIATE CICS TRANSACTION
Question: What is the difference between LINK and XCTL ? Answer: 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.
Question: What is the difference between CICS Program Control Table (PCT) and CICS Processing Program Table (PPT) ? Answer: 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.
Question: What are the 3 common ways to create maps? Answer: 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)
Question: What is Quasi-reentrancy? Answer: There are times when many users are concurrently using the same program, this is what we call MultiThreading. 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
Question: What is the difference between a physical BMS mapset and a logical BMS mapset? Answer: 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.
Question: How To Set MDT(Modified Data Tag) Thru Application Program?(Dynamically). Answer: You have to move the following macro DFHBMFSE to the Attribute field of that particular Variable.
Question: What CICS facilities can you use to save data between the transactions? Answer: COMMONAREA, TSQ & TDQ.
Question: How would you release control of the record in a READ for UPDATE? Answer: By issuing a REWRITE,DELETE, or UNLOCK command or by ending the task.
Question: How would you release control of the record in a READ for UPDATE? Answer: By issuing a REWRITE,DELETE, or UNLOCK command or by ending the task.
Question: 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. Answer: 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. B.
Question: What is the maximum number of exceptions that can be specified with a single HANDLE CONDITION command in CICS ? Answer: SIXTEEN (16)
Question: WHAT WILL BE THE LENGTH OF THE EIBCALEN ,IF THE TRANSACTION IS USED TO CICS FIRST TIME? Answer: THE LENGTH WILL BE 0(ZERO) . Question: WHAT IS DFHEIBLK? Answer: 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.
Question: What is the difference between the XCTL and LINK commands? Answer: The LINK command anticipates return of control to the calling program, theXCTL command does not. Return to the calling program will be the result of the CICS RETURN command, specifying TRANSID(name of the calling program).
Question: What CICS command would you use to read a VSAM KSDS sequentially in ascending order? Answer: 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 ofREADNEXT.
Question: What is the difference between pseudo-conversational and conversational? Answer: 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.
Question: What is the COMMAREA(communications area)? Answer: An area used to transfer data between diffrent programs or between subsequent executions of the same program. Needs to be defined in the Linkage Section. DB2 Tutorial :-
There are different types of charging plans depending upon whether you decide to charge according to the number of calls, the duration of calls, or charge a fixed amount for a particular time period.
Some countries have formulated different charges for different times of the day, thus making the charging entirely dependent on the time of the day.
Calls are charged by using either a metering instrument connected to each subscriber line or a metering register assigned to each subscriber in case of electronic exchanges. The count in the meter or register represents the number of charging units. The subscriber is billed by multiplying the number of charging units by the charging rate. The count in the meter is incremented by sending a pulse to the meter. Charging methods may be duration dependent or duration independent.
A charging point is the exchange where a call is recorded. In principle, the charging points should be as close to the calling subscriber as possible. For local calls, the charging point is the exchange. When the call is within the same tariff zone, the call is recorded within the local exchange. When the call is going to an exchange in another tariff zone, a more refined analysis of the relevant charge has to be carried out. Hence, one exchange in the zone becomes the new charging point. As the recording has to be sent to the local exchange, charging pulses must be sent to the local exchange.
Mainframe TSO / ISPF Refresher – Mainframe Quick Refresher
Patient care technicians work closely with nurses and health care staff to ensure patients are healthy and comfortable. Patient care technicians, PCTs for short, can also be referred to as nursing assistants and help with basics such as changing sheets or helping patients to the restroom.
The average salary for a patient care technician is $20.81 per hour in Las Vegas, NV.
Difference between TSO and ISPF
TSO | ISPF |
Stands for Time Sharing Option | Stands for Interactive system productivity facility |
Used to create an interactive session | You can add, configure and manage the system using ISPF |
TSO allows users to access ISPF | ISPF is Menu driven |
STOP RUN, EXIT PROGRAM & GO BACK
STOP RUN is the last executable statement of the main program. It returns control back to OS. EXIT PROGRAM is the last executable statement of sub-program. It returns control back to main program. GOBACK can be coded in main program as well as sub-program as the last statement. It just gives the control back from where it received the control.
There are two famous Collating Sequence available in computers. IBM and IBM Compatible machine use EBCDIC collating sequence whereas most micro and many mainframe systems use ASCII collating sequence. The result of arithmetic and alphabetic comparison would be same in both collating sequences whereas the same is not true for alphanumeric comparison
EBCDIC (Ascending Order) | ASCII (Ascending Order) |
Special Characters | Special Characters |
a-z | 0-9 |
A-Z | A-Z |
0-9 | a-z |
Default collating sequence can be overridden by an entry in OBJECT-COMPUTER and SPECIAL NAMES paragraphs. 1. Code the PROGRAM COLLATING SEQUENCE Clause in the Object computer paragraph. PROGRAM COLLATING SEQUENCE IS alphabet-name 2. Map the alphabet-name in the SPECIAL-NAMES paragraph as follows: ALPHABET alphabet-name is STANDARD-1 | NATIVE NATIVE stands for computer’s own collating sequence whereas STANDARD-1 stands for ASCII collating sequence.
The most famous decision making statement in all language is ‘IF’. The syntax of IF statement is given below: IF can be coded without any ELSE statement. THEN is a noise word and it is optional. If ORs & ANDs are used in the same sentence, ANDs are evaluated first from left to right, followed by ORs. This rule can be overridden by using parentheses. The permitted relation conditions are =, <, >, <=, >=, <> CONTINUE is no operation statement. The control is just passed to next STATEMENT. NEXT SENTENCE passes the control to the next SENTENCE. If you forgot the difference between statement and sentence, refer the first page. It is advised to use END-IF, explicit scope terminator for the IF statements than period, implicit scope terminator. IF condition1 AND condition2 THEN Statement-Block-1 ELSE IF condition3 THEN CONTINUE ELSE IF condition4 THEN Statement-Block-2 ELSE NEXT SENTENCE END-IF END-IF END-IF Statement-Block-2 will be executed only when condition 1, 2 and 4 are TRUE and condition 3 is FALSE. Implied operand: In compound conditions, it is not always necessary to specify both operands for each condition. IF TOTAL=7 or 8 is acceptable. Here TOTAL=8 is implied operation.
SIGN test is used to check the sign of a data item. It can be done as follows – IF identifier is POSITIVE/NEGATIVE/ZERO CLASS test is used to check the content of data item against pre-defined range of values. It can be done as follows – IF identifier is NUMERIC/ALPHABETIC/ALPHABETIC-HIGHER/ALPHABETIC-LOWER You can define your own classes in the special names paragraph. We have defined a class DIGIT in our special names paragraph. It can be used in the following way. IF identifier is DIGIT
Any simple, relational, class, sign test can be negated using NOT. But it is not always true that NOT NEGATIVE is equal to POSITIVE. (Example ZERO)
With COBOL85, we use the EVALUATE verb to implement the case structure of other languages. Multiple IF statements can be efficiently and effectively replaced with EVALUATE statement. After the execution of one of the when clauses, the control is automatically come to the next statement after the END-EVALUATE. Any complex condition can be given in the WHEN clause. Break statement is not needed, as it is so in other languages. General Syntax
EVALUATE | subject-1 (ALSO subject2..) |
WHEN object-1 (ALSO object2..) | |
WHEN object-3 (ALSO object4..) | |
WHEN OTHER imperative statement | |
END-EVALUATE. |
1.Number of Subjects in EVALUATE clause should be equal to number of objects in every WHEN clause. 2.Subject can be variable, expression or the keyword TRUE/ FLASE and respectively objects can be values, TRUE/FALSE or any condition. 3.If none of the WHEN condition is satisfied, then WHEN OTHER path will be executed. Sample
EVALUATE | SQLCODE ALSO TRUE |
WHEN 100 ALSO A=B imperative statement | |
WHEN -305 ALSO (A/C=4) imperative statement | |
WHEN OTHER imperative statement | |
END-EVALUATE. |
PERFORM will be useful when you want to execute a set of statements in multiple places of the program. Write all the statements in one paragraph and invoke it using PERFORM wherever needed. Once the paragraph is executed, the control comes back to next statement following the PERFORM.
PERFORM PARA-1. |
DISPLAY ‘PARA-1 executed’ |
STOP RUN. |
PARA-1. |
Statement1. |
Statement2. |
It executes all the instructions coded in PARA-1 and then transfers the control to the next instruction in sequence.
When sets of statements are used only in one place then we can group all of them within PERFORM END-PERFORM structure. This is called INLINE PERFORM. This is equal to DO..END structure of other languages.
PERFORM |
ADD A TO B |
MULTIPLE B BY C |
DISPLAY ‘VALUE OF A+B*C ‘ C |
END-PERFORM |
All the paragraphs between PARA-1 and PARA-N are executed once.
The identifiers used in the UNTIL condition(s) must be altered within the paragraph(s) being performed; otherwise the paragraphs will be performed indefinitely. If the condition in the UNTIL clause is met at first time of execution, then named paragraph(s) will not be executed at all.
N can be literal defined as numeric item in working storage or hard coded constant.
FROM identifier 2 BY identifier3 UNTIL condition(s)
Initialize identifier1 with identifier2 and test the condition(s). If the condition is false execute the statements in PARA-1 thru PARA-N and increment identifier1 BY identifier3 and check the condition(s) again. If the condition is again false, repeat this process till the condition is satisfied.
With TEST BEFORE, Condition is checked first and if it found false, then PARA-1 is executed and this is the default. (Functions like DO- WHILE) With TEST AFTER, PARA-1 is executed once and then the condition is checked. (Functions like DO-UNTIL)
COBOL reserved word that performs NOTHING. It is used as a single statement in a paragraph that indicate the end of paragraph(s) execution. EXIT must be the only statement in a paragraph in COBOL74 whereas it can be used with other statements in COBOL85.
Are you preparing for IBM – MVS job interview?. MVS is Multiple Virtual Storage was one of the operating system commonly used on System/370 and 390 IBM computers. MVS supports very large virtual storage that is larger than available storage. MVS is the perfect solution for business problems that resulted from the need to run more applications. Job Control Language is the main user interface to MVS. Later on CICS and TSO, the interactive time sharing interface are used mainly to run development tools. TSOs basic interface is command line. MVS software recovery is used for problem debugging. Good knowledge on these concepts will fetch right job. Wisdomjobs framed IBM – MVS job interview questions and answers to make it easier for your interview preparation.
FAQ
What is difference between TSO and ISPF?
What is TSO command in mainframe?
What is ISPF in mainframe?
What is ISPF command?