×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
Rob
Where is the MONMSG on page 20? I never suggest having ONLY a global
MONMSG - always have local handlers for situations you know about. Those
will give you the very necessary reusability you want.
We are talking about percolation of error handling here - I think Bruce
V said that if you don't have a global MONMSG, you are telling the
system to use the default global handler. It's how the system has always
worked - handle an error at some internal level, resend it as needed or
take appropriate action. Same in RPG as in CL or C. Write cancel or
exception handlers with APIs to get even more granular capabilities. But
in the end, there will be things that you can't anticipate - make them
more friendly than giving the user the C I R options.
Vern
rob@xxxxxxxxx wrote:
Sample
MONMSG CPF0000 GOTO(ERRSTUFF)
...
Page 20
...
CPYF MYLIB/MASTERFILE QTEMP/WORKFILE...
DLTF MYLIB/MASTERFILE
CALL ProgramToRecreateMasterFile
...
Page 27
...
goto end
errstuff:
/* handle errors with pretty email */
end:
Now, instead of taking an R when ProgramToRecreateMasterFile blew up I
have no MASTERFILE. And my QTEMP copy of WORKFILE is gone. But at least
I have pretty email.
The other problem is that developers often get lazy by relying upon the
generic top level MONMSG and errors go on for years unnoticed - seen
that. But that's mostly without the goto.
Rob Berendt
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
[javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.