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 - 1459 days ago
Last viewed on: 23 Jun 2017 (2623 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!

Chris

 

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

COMMENTS

(Sign in to Post a Comment)
Posted by: chrisp
Premium member *
Portland, OR
Comment on: *ENTRY plist using prototype definition question
Posted: 3 years 11 months 28 days 14 hours 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: 3 years 11 months 28 days 13 hours 54 minutes ago
Edited: Wed, 26 Jun, 2013 at 12:14:47 (1459 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.