IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

ASRA Abend when returning from a calling program


IBM Mainframe Forums -> ABENDS & Debugging
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
pkarthik@email.com

New User


Joined: 29 Aug 2005
Posts: 2

PostPosted: Thu Apr 06, 2006 9:13 pm
Reply with quote

Hi,
My Program calls this program AMS3094 by using the bellow statement

CALL 'AMS3094' USING
WS-AMSPX094-PARM-LIST
AMSTWACB-TRANSACTION-WORK-AREA

My screen abended with ASRA ABEND

When i changed the code to
CALL 'AMS3094' USING
DFHEIBLK
DFHCOMMAREA
WS
-AMSPX094-PARM-LIST
AMSTWACB-TRANSACTION-WORK-AREA

My Program worked fine.

Called Program
******************************************************************
LINKAGE SECTION.
*======= COBOL 2 REQUIRES THE EIB & COMMAREA IN CALLS
COPY DFHEIBLK.
01 DFHCOMMAREA.
05 FILLER OCCURS 1 TO 4095 DEPENDING ON EIBCALEN PIC X.

01 LS-PARAMETER-LIST.
COPY AMSPZ094.
EJECT
01 LS-TRANSACTION-WORK-AREA.
COPY AMSTWACB.

EJECT
******************************************************************
*======= COBOL 2 REQUIRES THE EIB & COMMAREA IN CALLS
PROCEDURE DIVISION USING
EIBLK
DFHCOMMAREA
LS-PARAMETER-LIST
LS-TRANSACTION-WORK-AREA.

MOVE +0 TO AMSPZ094-NUM-EDIT-RETURN-CODE.

This code exists for a long period of time

We experienced this error When we made an attempt to convert normal cobol to Enterprise cobol this both the programs.
Can any one please tell me the significance of this EIBLK and why i received this abend when this two parameters are not available.
Back to top
View user's profile Send private message
acp_ajay1

New User


Joined: 13 Mar 2006
Posts: 9

PostPosted: Fri Apr 07, 2006 9:36 am
Reply with quote

Hi pkarthik,

Basically ASRA code 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.


While the DFHEIB is a set of file definitions of Execute Interface Block. When cics activates the program, it places proper values into corresponding EIB fields and the values will be updated as the program is executed. Therefore these values can be easily used by the application program.

When u call the program using the statement

CALL 'AMS3094' USING
WS-AMSPX094-PARM-LIST
AMSTWACB-TRANSACTION-WORK-AREA

u may be moving spaces into some numeric field.

I hope this would prove useful to u.

Regards,
Ajay
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> ABENDS & Debugging

 


Similar Topics
Topic Forum Replies
No new posts Error to invoke MPP program through B... IMS DB/DC 3
No new posts Call an hlasm from REXX in batch and ... CLIST & REXX 4
No new posts What is the most complex abend you've... Mainframe Interview Questions 8
No new posts Using API Gateway from CICS program CICS 0
No new posts Calling DFSORT from Cobol, using OUTF... DFSORT/ICETOOL 5
Search our Forums:

Back to Top