× 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.


  • Subject: RE: Integrity help? - "stack walker CL"
  • From: Buck Calabro <mcalabro@xxxxxxxxxxxx>
  • Date: Mon, 12 Jan 1998 08:44:33 -0500

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 thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.