×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




Just my opinion. Returning data structures with addresses of procedures seem
really ugly. Add a new procedure and new data structure.

Seems service program are designed to do exactly what you want. Expose
multiple procedures and I can add new procedures at anytime. I have the
QLEACTBNDPGM api in a service program so nothing to loading the procedure. I
am doing it all over the place.

/copy *libl/qsrcf,xvdynl_pr

d pptrCallProcedure...
d s Like(StdPrcPtr)
d CallProcedure...
d pr ExtProc(pptrCallProcedure)
d PR_DataString...
d 32767a Varying
d pptrTriggerProcedure...
d s Like(StdPrcPtr)

// If not loaded before, load the service program.
If Not ProgramLoaded;
pptrTriggerProcedure =
DYNL_LoadServiceProgramProcedure(ServiceProgramName :
ServiceProgramLibrary:
ServiceProcedure );

// Call the procedure to handle this message.
pptrCallProcedure = pptrTriggerProcedure;
Monitor;
CallProcedure(SendData);
On-Error;




On Wed, Apr 7, 2010 at 1:21 PM, Scott Klement <rpg400-l@xxxxxxxxxxxxxxxx>wrote:

Service programs can do the same thing -- though it's a little more
complex. I've used service programs as well.

But I don't know why you said they'd be "better". Remember, signature
checking isn't going to be done, since the service program library/name
isn't known at compile/bind time. So what does using a service program
gain you?

Using a *PGM means you don't have to resolve a system pointer (using MI
builtins) and call the QleActBndPgm/QleGetExp APIs. Other than
eliminating that bit of extra code, the work is the same...


On 4/7/2010 1:42 PM, Alan Campin wrote:
Sounds like service programs would work better.

--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

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

This mailing list archive is Copyright 1997-2026 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.