|
Is it too late to redefine the parm(s)? What others (JP CARR) taught me is to define one long Physical File DDS that has all the fields you could possible want for that general application. Then, just define that as the Parm, and pass it around in your applications as you wish. It makes your future work so much simpler, too. -------------------------------------------- Booth Martin MartinB@Goddard.edu 802-454-8315 x235 -------------------------------------------- -------Original Message------- From: rpg400-l@midrange.com Date: Wednesday, November 28, 2001 10:58:21 AM To: 'RPG400 Mailing List' Subject: Using *OMIT & *NOPASS Folks: I've got a bit of a quandary... We've been writing a number procedures that have a variable number of parameters. These procedures, in turn, call other procedures that also have a variable number of parameters. The two procedures have very similar (if not identical) parameter lists ... but the called parameter might call a different procedure based on a control file. I made the erroneous conclusion that if a parameter was not passed, it's address would be set to *NULL (similar to passing *OMIT). So, the question is ... what is the best way to handle possibility unpassed parameters without having to code a complex structure of "if %parms > 2, call w/ 3 params, if %parms > 3, call w/ 4 params", etc? Here's a quick pseudocode of what we are doing... Program Z callp x(a,b) end pgm z Proc X (a, b *nopass, c *nopass) if control file say one thing return Y (a,b,c) else return W (a,b,c) endif end proc X Proc Y (a, b *nopass, c *nopass) do stuff end proc Y Proc W (a, b *nopass, c *nopass) do other stuff end proc Y david -- David Gibbs Sr. Software Engineer MKS, Inc. 2500 S. Highland Ave, Suite 200 Lombard, IL 60148 (630) 495-2108 x5004 Need a laugh (we all do these days): visit http://www.userfriendly.org _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@midrange.com To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l or email: RPG400-L-request@midrange.com 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 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.