View previous topic :: View next topic
|
Author |
Message |
ElHachu
New User
Joined: 12 Mar 2010 Posts: 9 Location: Madrid
|
|
|
|
Hi everyone!
I am working on migrating an application and I am replacing ILBOABN0 by CEE3ABD routine. The problem is that I found ILBOABNO calls and do not know which is the difference with ILBOABN0. I asked colleagues and searched online, but I have not been able to find a clear explanation. Thank you very much for your time. Regards. |
|
Back to top |
|
|
Kjeld
Active User
Joined: 15 Dec 2009 Posts: 365 Location: Denmark
|
|
|
|
The manual references I have access to all mention ILBOABN0 (trailing zero). Some programmers may have misspelled the call as 'ILBOABNO' and might have got missing external reference for that during link editing.
You could check linkage editor output for the old modules to see if references to ILBOABNO actually are resolved.
In any case, the programmer gets the desired action from the call: His module abends. Maybe not by execution of the called module, but by calling an unresolved module reference. |
|
Back to top |
|
|
ElHachu
New User
Joined: 12 Mar 2010 Posts: 9 Location: Madrid
|
|
|
|
Thank you Kjeld.
After asking everyone, I tested what happened if I called ILBOABNO and the result was the abend, but I got a message telling the module was not found and that's why I was a bit bewildered, so I decided to ask here... |
|
Back to top |
|
|
mmwife
Super Moderator
Joined: 30 May 2003 Posts: 1592
|
|
|
|
Hi ElHachu,
What was the Abend code? S806? |
|
Back to top |
|
|
manikawnth
New User
Joined: 07 Feb 2007 Posts: 61 Location: Mumbai
|
|
|
|
It is ILBOABN0 (last char zero).
It is an utility program to force an Abend in COBOL.
I guess it should throw U0749 Abend.
I guess in ur application programs after the code is compiled, some one might have overridden the source code with ILBOABNO instead of ILBOABN0.
Thanks,
Manikanth
P.S: Do I make sense or Am I being silly in my thought? |
|
Back to top |
|
|
Kjeld
Active User
Joined: 15 Dec 2009 Posts: 365 Location: Denmark
|
|
|
|
Manikanth,
There would be no need to zap the compiled code with a new reference, if the programmer wrote ILBOABNO with capital O, that module would compile successfully. The linkage edit would warn that the entry point would still have an unsolved reference, but depending on procedures used for producing the loadmodule, you could end up having a program with an unsolved reference.
I think there will be an attempt to fetch the module dynamically during runtime also, before giving up. |
|
Back to top |
|
|
manikawnth
New User
Joined: 07 Feb 2007 Posts: 61 Location: Mumbai
|
|
|
|
You are absolutely right boss.
But i am just analysing the intention of the programmer for writing it as ILBOABNO, as I dint hear abt it at any time.
And yes the result would be abend in the both the cases of ILBOABN0 and ILBOABNO. One is designed for abend and the other is not designed, so abend.
I would like to know wat abends u encountered while using ILBOABN0 (when u call it without populating abend code) and ILBOABNO?
Thanks,
Manikanth |
|
Back to top |
|
|
Kjeld
Active User
Joined: 15 Dec 2009 Posts: 365 Location: Denmark
|
|
|
|
The possibility that the programmer misread his reference for which module name to use is evident. And at least some 3270 terminal fonts didn't help in spotting the difference between O and 0.
The OP hasn't revealed what abend code a call to ILBOABNO would give in his installation. The default abend code for ILBOABN0 can be looked up in the manual... |
|
Back to top |
|
|
ElHachu
New User
Joined: 12 Mar 2010 Posts: 9 Location: Madrid
|
|
|
|
Hi all!
mmwife, now I am on holidays, but I think the abend I got when executed ILBOABNO (capital O) was S806 (module not found).
Like Kjeld said, no problem was found when compiling, the program has been running for years... I don't know the programmer intention because I never had heard about ILBOABNO. I have people working with me with 15 years of experience and they haven't heard about it at all.
I found this IBM handbook
www.redbooks.ibm.com/redbooks/pdfs/sg242044.pdf
You can find ILBOABNO (capital O) in the text, but only a poor reference. I thought it could be an obsolete routine, maybe a mistake (unprobable, but I think that's it).. |
|
Back to top |
|
|
mmwife
Super Moderator
Joined: 30 May 2003 Posts: 1592
|
|
|
|
Hi ElHachu,
I think using ILBOABNO instead of ILBOABN0 was a mistake too. Fortunately it produced the S806 abend and terminated the pgm as required (almost ).
My guess is that the pgm also issued a DISPLAY that explained the reason for the abend and the ops/tech guys were able to puzzle it out. Or the CALLing code was never issued until your testing uncovered it.
If your site keeps prod problem logs you may find something there, or you might ask around in ops/tech. |
|
Back to top |
|
|
|