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



Should have mentioned that both ILE CL and ILE RPG support
non-character parameters into a program; just in case you didn't
already know.

Note that they do not support parameters passed by value into the
program however. Which shouldn't be too big a deal, no iSeries *PGM
object does.

Charles

On Mon, Feb 23, 2009 at 12:48 PM, Charles Wilt <charles.wilt@xxxxxxxxx> wrote:
I suppose then the ILE answer would be to create a *PGM with a non-C
entry point.

You could simply use ILE CL or ILE RPG as the entry point, and have
them call your ILE C procedure.

Charles

On Mon, Feb 23, 2009 at 10:29 AM, Olsson Erik <erik.eo.olsson@xxxxxxxxx> wrote:
Thanks Buck. Sorry for being slow, but even if my CMD can check the validity
of the parms I still need to cater for casting the argv * to whatever non
char * datatype I want in my called program?

2009/2/23 Buck <kc2hiz@xxxxxxxxx>

Erik wrote:

I want to submit a call to a program in batch, and the program needs to
take
a number of parameters.
If this was an interactive application I'd create the called program as a
service program, have a prototyped interface for controlling parameters
and
all would be fine.

Any better solutions than having the program called via SBMJOB to have a
main function and then manually typecast the parms from argv's char * to
their proper ones (say integers)?

Thanks in advance.

The classic answer is to write a CMD object wrapper and then instead of
SBMJOB CMD(CALL MYPGM (parm1 parm2) do a SBMJOB CMD(MYCMD parm1 parm2)

The classic answer for those who prefer not to write a command (it's
easy) is to remind them that numeric data is passed as packed (15, 5)
and if you structure the called program so its numeric parameters are
packed (15 5) then your SBMJOB CMD(CALL MYPGM (123 456) will work as
expected.

--buck
--
This is the C programming iSeries / AS400 (C400-L) mailing list
To post a message email: C400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-l.


--
This is the C programming iSeries / AS400 (C400-L) mailing list
To post a message email: C400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-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.