× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Have you tried using %PARMS on the external procedure?
Heres a quick example...
P prExtProc B EXPORT
D PI N
* Optional Display only
D vbOptional N OPTIONS(*NOPASS) VALUE

* Default Display only Parameter
D pbDisplayOnly S N

/FREE
// If parameter passed, use it
pbDisplayOnly = %PARMS > *ZEROS AND vbOptional;
// Rest of stuff...
RETURN pbDisplayOnly;
/END-FREE
P prExtProc E

That's the approach I generally use, but with a twist for readability (and
to simplify/clarify the default settings)

Using your example, I would set pbDisplayOnly to a default value (in this
case, it would be INZ(*Off)).

Then, you'd see:
If %Parms >= 1 ;
pbDisplayOnly = vbOptional ; // Override default with specified
setting
EndIF ;

If pbDisplayOnly ;
// et cetera

In this manner, the default is clearly stated, and the override is simple to
understand. Plus, adding a second (or third, or more) optional parameter
becomes a relatively simple maintenance chore.

Regards,

Dennis Lovelady
http://www.linkedin.com/in/dennislovelady
--
"Life is what happens while you are making other plans."
-- John Lennon




As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

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

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.