| 
 | 
John Carr wrote:
>RE:    RE: Integrity help?
>
>
>Tim & dana
>I have listed 3 times a simple CL program to "walk you" through the program
>stack.  Very simple to find all programs in your stack (10+/- lines of code.)
>I will post them soon.  
>Sorry can't do it right now.   I just had eye surgery(detached retina)
>and have limited time on computer as per wife.
>
>Will post it again real soon.
John,
        Listen to your wife!  Spend all the time you want when you're 
100% again...
Tim,
        Here's a re-post of John's code...
In your *INZSR subroutine repeatedly call a CLP to retrieve the
program name of the caller.  You can "walk up the Stack" past the
programs(OS/400's that begin with "Q")  to the program you're looking for.
Just call the below program repeatedly(in a loop in your *INZSR),
First time pass your trigger program name as the &CALLED, and who ever
called your trigger will be returned in the &CALLER variable.  This will be a
"Q" OS/400 program.  Call the CLP again this time pass what was
returned the first time to find out who called him, and so on.  up the stack
till *EXT..
Stop when the program name(&CALLER) doesn't begin with a "Q".
That's the program you want..
PGM    &CALLER &CALLED
DCL   &CALLER  *CHAR  10
DCL   &CALLED  *CHAR  10
DCL   &M1KEY   *CHAR   4
DCL   &M1MDTA  *CHAR  80
SNDPGMMSG  MSG('TEST')  TOPGMQ(*PRV &CALLED) MSGTYPE(*RQS)
KEYVAR(&M1KEY)
RCVMSG   PGMQ(*PRV &CALLED)  MSGKEY(&M1KEY)  SENDER(&M1MDTA)
CHGVAR   &CALLER    %SST(&M1MDTA  56 10)
ENDPGM
John Carr
Hope this helps...
Buck Calabro
Commsoft, Albany, NY
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to "MIDRANGE-L@midrange.com".
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
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.