|
----- Original Message ----- From: "James David Rich" <james@dansfoods.com> To: <rpg400-l@midrange.com> Sent: Monday, July 17, 2000 11:07 Subject: How to prototype CL modules > I need to make a CL module that will be called from an RPG module. The CL > module looks like this: > > PGM PARM(&MSG) > DCL VAR(&MSG) TYPE(*CHAR) LEN(200) > SNDPGMMSG MSG(&MSG) > RETURN > > How do I prototype this so it can be used in the RPG module? I want to > make this a subprocedure, but how do you define the subprocedure name in > CL? Make the source member CLLE. Unlike RPG, a CLLE module can only contain a single procedure. Therefore, the name of the module is also the name of the procedure. The prototype would be a as follows: D SndMsg PR D oMsgDta 200A Const ( the "Const" keyword is optional) > Maybe there is a better way to do this. If I explain what I am doing > maybe someone will have some suggestions. > > This is for sending error messages on error (duh). I want to do something > like: > > C eval err = do_something(parms) > C if (err = 1) > C eval err = sendmessage("message text goes here") > C endif > > My little CL program is supposed to be the > "sendmessage" subprocedure. Any ideas on improvement? Avoid the command. Use the QMHSNDPM API instead. I have a service program that provides message handling services. It was my very first service pgm, (written under V3R2 back in 97), so it could definitely use some "polish", and better documentation, but you're welcome to a copy if you need it. Regards, John Taylor Canada +--- | 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-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.