I’m moving an application from iSeries to windows2003. This app has an agent ulitizing LSXODBC to submit a remote command to an iSeries while passing some parameters in a string. This app was written specifically to run on an iSeries as it was coded using the shell script below:
ret = Shell (“SBMRMTCMD CMD('CALL PGM(PAJLIB/DT4) PARM(” & params & “)') DDMFILE(QGPL/PROD840)”)
Obviously this won’t run on Windows… but I’ve loaded iSeries Access for windows which allows the rmtcmd - where I can run iSeries commands from windows. From a command prompt on windows this works w/o error :
C:\WINDOWS>rmtcmd SBMRMTCMD CMD(‘CALL PGM(PAJLIB/DT4) PARM(" & params & ")’) DDM
FILE(QGPL/PROD840)
when scripted… it has to be re-written as such (I believe):
ret = Shell (“rmtcmd SBMRMTCMD CMD('CALL PGM(PAJLIB/DT4) PARM(” & params & “)') DDM FILE(QGPL/PROD840)”)
This errors out with (I see this in the domino console) -
The remote system name is S1024275.
CPD0044 - Positional value cannot follow keyword parameter.
CPD0043 - Keyword FILE not valid for this command.
CPF0001 - Error found on SBMRMTCMD command.
CPF0006 - Errors occurred in command.
First - I know everybody will say “change to lsxlc” … I can’t… I’m not a developer… so I can’t change the whole app for syntax. LSXODBC will work (from what I’m told)…
my question is - does anybody know something about this - rmtcmd syntax, etc … I can’t seem to find anything on these forums. The syntax above works from a cmd prompt but now when scripted…
the original environment was iseries (domino application) to iseries (db2) … now windows (domino app) to iseries (db2)