|
Joel Stone wrote using HTML:
>Thanks for the info. I was looking for info on
>how to do this and use the created functions
>IN ANY ILE Program (Without copying
>the subprocedure source into the pgm).
Right on!
>So for your example, after creating a
>srvpgm containing the procedure
>"ShowMsg", how can I invoke the
>ShowMsg function in other programs?
The "typical" thing to do is to make 3 source members:
* QPROTOSRC mbr(SHOWMSG) - don't compile
* Display a message to the user
D ShowMsg pr 10u 0
D MsgText 50 const
D MsgQueue 10 const
* QRPGLESRC mbr(SHOWMSG) - compile option 15,
* then CRTSRVPGM
H Nomain
H debug option(*srcstmt: *nodebugio)
* dbgview(*list)
* CRTSRVPGM SRVPGM(*CURLIB/SHOWMSG)
* EXPORT(*ALL)
* TEXT('Display message to user')
* ACTGRP(*CALLER)
* Display a message to the user
/copy qprotosrc,showmsg
P ShowMsg b Export
D ShowMsg pi 10u 0
D MsgText 50 const
D MsgQueue 10 const
D rc s 10u 0
C MsgText Dsply MsgQueue 99
C If *In99 = *On
C Eval rc = -1
C Else
C Eval rc = 0
C EndIf
C Return rc
P ShowMsg e
* QRPGLESRC mbr(DSPLY) - compile option 15,
then CRTPGM
H debug option(*srcstmt: *nodebugio)
* dbgview(*list)
* CRTPGM PGM(*CURLIB/DSPLY)
* BNDSRVPGM(*LIBL/SHOWMSG)
* ACTGRP(QILE)
* Display a message to the user
D rc s 10u 0
D/copy qprotosrc,showmsg
C eval rc = ShowMsg('Test': 'BUCK')
C eval *inLR = *On
Now, any place you want to use the ShowMsg function, you include the /copy
and BNDSRVPGM. Binding source and binding directories can come next
perhaps...
Buck Calabro
Aptis; Albany, NY
"We are what we repeatedly do.
Excellence, then, is not an act, but a habit." --Aristotle
Billing Concepts Corp., a NASDAQ Listed Company, Symbol: BILL
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-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.