|
With RPG xTools' GetCallerInfo() procedure, you can retrieve the caller's program name, procedure name or module name. It's a bit flexible, so it may seem complicated, but you could do this: // return the caller's program Eval myCaller = GetCallerInfo() // returns the caller's procedure name Eval myCallerProc = GetCallerInfo('*PROC') // returns the caller's module name Eval myMod = GetCallerInfo('*MOD') Or you can get all three values, but doing this: Callp GetCallerInfo('*ALL': rtnPgm : rtnMod : &rtnProc ) It uses snd/rcv message APIs under the covers to do this, and yes, using those raw APIs vs the old CL command method or the xTools' procedure is a bit complex to get working. But if you'd rather roll your own, go for it. -Bob Cozzi www.RPGxTools.com If everything is under control, you are going too slow. - Mario Andretti -----Original Message----- From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Hewitt, Rory Sent: Thursday, August 18, 2005 3:56 PM To: rpg400-l@xxxxxxxxxxxx Subject: RE: RPG400-L Digest, Vol 4, Issue 1002 Jeffrey, I don't think this is possible to retrieve it automatically (except maybe by calling QMHSNDPM and then QMHRCVPM and retrieving the sending procedure name, which is a huge hassle). I'm pretty certain the *PROCEDURE bit of the PSDS doesn't contain the procedure name (at least not at V5R2, which is where I'm at). I always define a constant within each procedure (always called ##_PROC) containg the name of the procedure, whch then makes it easy to find program dumps, e.g. P GetUserInfo B Export D PI 10I 0 D UsrPrf 10A Const Options(*Nopass) *---------------------------------------------------------------- D ##_Proc C 'GetUserInfo' *---------------------------------------------------------------- ... ... ... C *PSSR Begsr C If GlobalDumpErrors = *On C ##_Proc Dump C Endif C Return -1 C Endsr HTH, Rory
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 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.