Midrange News for the IBM i Community

Posted by: Chris Proctor
Programmer Analyst
Columbia Sports Company
Portland, OR
*ENTRY plist using prototype definition question
has no ratings.
Published: 26 Jun 2013
Revised: 26 Jun 2013 - 3901 days ago
Last viewed on: 01 Mar 2024 (4682 views) 

Using IBM i? Need to create Excel, CSV, HTML, JSON, PDF, SPOOL reports? Learn more about the fastest and least expensive tool for the job: SQL iQuery.

*ENTRY plist using prototype definition question Published by: Chris Proctor on 26 Jun 2013 view comments(2)

Good morning. I've gotten out of the habit of using *ENTRY plists and use prototype definitions instead. I have an issue though where I'm trying to pass a parm back to the calling CLP and even though the parm is populated when I exit from the program, the CLP does not see the value, it's blank.

In this program, I am trying to pass the member name back to the CLP. Here's what I have defined in the RPGLE program:

d rptSelect pr                                  extproc('NCI596')

d pmbr                                   10a

As I mentioned, the pmbr field does have a value when I set on *inlr and exit the program. Do I have to use *ENTRY in order to get a value passed back to the calling CLP? Thanks in advance for any help!



Return to midrangenews.com home page.
Sort Ascend | Descend


(Sign in to Post a Comment)
Posted by: chrisp
Premium member *
Portland, OR
Comment on: *ENTRY plist using prototype definition question
Posted: 10 years 8 months 5 days 23 hours 33 minutes ago

Never mind! I'm an idiot!   I forgot to include the procedure interface for the *ENTRY parameters! Duh!!

Posted by: BrianR
Premium member *
Green Bay, WI
Comment on: *ENTRY plist using prototype definition question
Posted: 10 years 8 months 5 days 23 hours 27 minutes ago
Edited: Wed, 26 Jun, 2013 at 12:14:47 (3901 days ago)

Do you have a procedure interface defined (a definition type of PI)?  That's the replacement for the *ENTRY PLIST.  Also, is this a program or a procedure?  If a program, then use the EXTPGM keyword on your prototype.  If a procedure, then the CL program has to use the CALLPRC command, not CALL.

Edit: I see you figured it out.