View previous topic :: View next topic
|
Author |
Message |
RBANSAL
New User
Joined: 11 Aug 2012 Posts: 3 Location: USA
|
|
|
|
Hi,
There is a Mainframe online CICS background program which will be triggered as soon as the message comes from the source system (In my case source system is MDM) through MQ.
All the validations are done in Source system, there are no validations done in our mainframe online CICS background program. So if by any chance, program recieves any kind of data which makes the program abend with SOC7. Is there any way to control this SOC7?
Can I do like this:-
I can create 2 programs, one will be just a calling program(X) and a called program(Y). As soon as the message comes in MQ then my calling program(X) will be triggered and in turn called program (Y), if there is SOC7 in called program (which is doing all database updates) then return will come to Calling program and I can take care of that abend (I can park the abend message to some notification queue, so that user at MDM end got aware that some data has not been updated).
Please Suggest.
Rgeards,
Ritesh Bansal |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
validate your data and you don't have to deal with a soc7. |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
If you don't (or won't) go through a data-validation process, then have your CICS Sysprog print the transaction dump and then use the old-fashioned method of diagnosing bad decimal-data via dump interpretation.... |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello and welcome to the forum,
Quote: |
there are no validations done in our mainframe online CICS background program |
If your management cannot ensure the incoming file is correct, then you need to do the validatons in the code that abends.
There is no good reason to deal with abends that can be prevented. |
|
Back to top |
|
|
RBANSAL
New User
Joined: 11 Aug 2012 Posts: 3 Location: USA
|
|
|
|
Hi All,
Thanks a lot.
Just one more clarification in the same:
If I receive a SOC7 in a Called Program(Y), then whether the return will come to calling program(X) or not?
Or It will just simply abend the main caling program(X) itself?
Regards. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
then whether the return will come to calling program(X) or not? |
This should not matter . . . The abend should be prevented one way or another.
Usually when a transacton abends, it is gone - there is no return to caller. |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
Ritesh,
we are not a short cut to reading the manuals.
had you read about HANDLE ABEND
and then asked about implementation
you would have been using the forum properly.
as it is, you are not. |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
Program (Y) will not return to Program (X) if the abend occurs in program (Y).
Have you spoken to your CICS Sysprog (as previously suggested) to print the transaction dump (which may contain a Trace) and/or seek assistance in dump interpretation from your Tech Support group, which just might be the Sysprog?
There's no easy way out of this. You need to find the culprit data and trace it back to its source. Because this is a S0C7, it is most likely (but not always) going to be packed-decimal (COMP-3) data.
You're an "Engineer", so this should be easy stuff.... |
|
Back to top |
|
|
|