Abend Code= Asra Error Code Asra
Contents |
ASRA is a well known mainframe CICS abend that can occur abmo abend if your code does not handle specific code situations. For example the definition will explain this as http://www.ibm.com/support/knowledgecenter/SSGMCP_5.1.0/com.ibm.cics.ts.doc/dfhs1/topics/dfhs1l7.html a CICS interrupt code, but basically it is an error that was not handled. This could be an 0C7 error (S0C7) or it could fall into other error conditions like S0C4 or even S0C1 http://www.gatorspit.com/tips/asra-cics-abend.html (note those are zeros, not SOC7 or SOC4). More often then not it is a data related crash, usually you can search the program for numeric related moves or possible non numeric data being moved to numeric fields, division by zero, or other odd scenario's that may not have been handled properly. It really depends on the type of coding you are doing and what the business logic is being done. You may need to dig through and debug the code to find what is causing this. Searching through the program dump is a good way to also find this error.
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of this site About Us Learn more about Stack Overflow the company Business Learn more about http://stackoverflow.com/questions/10257205/abend-asra-how-to-deal-with-this hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a minute: Sign up Abend ASRA. How to deal with this up vote 1 down vote favorite I have a map which has two input fields with data types X(6),9(8) I store these abend code two values in the below variables in my cobol-cics program. 01 SCREEN-DATA. 05 ACTNUM PIC X(6). 05 AMOUNT PIC 9(8). Now i am passing these two values to cobol-db2 program: CALL UPDATEPROG USING ACTNUM,AMOUNT. In my update program: LINKAGE SECTION. 01 DEPOSITPARAMS. 05 ACTNUM PIC X(6). 05 AMOUNT PIC 9(8). PROCEDURE DIVISION USING DEPOSITPARAMS. MOVE ACTNUM TO ACCOUNT-NUMBER. Where ACCOUNT-NUMBER is my host variable of the table i've created. It is fine in running the program but in abend in cics my map when i entered the details and pressed enter, i am getting an abend. When i gave some static value like: MOVE 071250 TO ACCOUNT-NUMBER. It's working fine and i was able to update,retrieve values from the table using queries.What might be the cause for this abend. Please help me with this problem These are my host variables created in DCLGEN 01 DCLACCOUNT-MASTER. 10 ACCOUNT-NUMBER PIC X(6). 10 ACCOUNT-HOLDER PIC X(20). 10 ACCOUNT-BALANCE PIC S9(8)V9(2) USAGE COMP-3. 10 LAST-UPDT-DATE PIC X(10). 10 OPENNING-DATE PIC X(10). Another observation i made is, wherever i am using the ACTNUM variable i.e., the linkage section variable. I am getting abend db2 call cobol cics share|improve this question edited Apr 21 '12 at 17:55 asked Apr 21 '12 at 7:42 Pramod 34041750 1 Be careful with your call/linkage. The calling program is passing two parameters by reference (CALL UPDATEPROG USING ACTNUM,AMOUNT) but the called program is receiving only one parameter (PROCEDURE DIVISION USING DEPOSITPARAMS). This may work in this specific case since the calling program and called program have their working storage/linkage layed out in a way that will allow this, but in general this can lead to problems since the addresses may not always line up properly. Best to keep a 1:1 relationship between parameter lists in calling and called programs. –NealB Apr 23 '12 at 13:52 add a comment| 3 Answers 3