× 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.



You cannot reference a parameter if it hasn't been passed. In programs which
have a variable number of parameters, I reference the parameters only once,
in the *INZSR, and move them (if passed) or default values (if not passed)
to the actual variables I'm using in the program.

In other words, you need to move Param1 to another variable if, and only if,
%PARMS > 0. Otherwise, initialize the other variable to some default. Then
only use the new variable in the calcs.

Francis Lapeyre

Quidquid latine dictum sit, altum viditur.




-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Satheeshkumar_selvaraj
Sent: Friday, September 30, 2005 3:40 AM
To: RPG400-L@xxxxxxxxxxxx
Subject: How to pass variable number of parameters in SQLRPGLE

Hi All,

 

I want to call my SQLRPGLE program in two modes.

 

1.      From another program with one parameter (character type).
2.      From the Command Line with out any parameter.

 

I have coded it as follows,

 

* Prototype for calling this program (*ENTRY)          

DMYPGM        PR                   EXTPGM(MYPGM)                

DParam1                       10A   OPTIONS(*NOPASS) 

 

 * Procedure interface for this program (*ENTRY)        

DMYPGM         PI                                   

DParam1                       10A   OPTIONS(*NOPASS)

 

C                      IF   %PARMS > 0

C                      ........

C                      ELSE

C                      ........

C                      ENDIF

 

The *NOPASS works fine when I coded it in a subprocedure and used that
subprocedure in my main program.

When used in the main program it is working fine when I call it with a
parameter.

But it is giving "Pointer or Parameter error" when called without any
parameter.

 

Can any one please tell me what is wrong in my code?

I tried the same code with RPGLE type it is working fine. But why it is not
working with SQLRPGLE?

In RPGLE it is working fine even if I remove the *NOPASS option. !!!!

 

Thanks,

Satheesh

 



DISCLAIMER:
This email (including any attachments) is intended for the sole use of the
intended recipient/s and may contain material that is CONFIDENTIAL AND
PRIVATE COMPANY INFORMATION. Any review or reliance by others or copying or
distribution or forwarding of any or all of the contents in this message is
STRICTLY PROHIBITED. If you are not the intended recipient, please contact
the sender by email and delete all copies; your cooperation in this regard
is appreciated.
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
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 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.