Hi
I have created a rpg program that returns 2 parameter 1 is the id and another one is list of array, when I called this program I passed two programparameter from my java code (see the code below) but when i checked what value would be return it is returned only first value of array. how will i get all array values ?
please suggest me regarding this issues I amn't so much aware on java & AS400.
try
{
ProgramParameter[] parmList = new ProgramParameter[2];
AS400Text p1 = new AS400Text(10);
AS400Text p2 = new AS400Text(30);
try
{
parmList[0] = new ProgramParameter(10);
parmList[1] = new ProgramParameter(30);
parmList[0].setParameterTy
pe(Program
Parameter.
PASS_BY_RE
FERENCE);
parmList[1].setParameterTy
pe(Program
Parameter.
PASS_BY_RE
FERENCE);
parmList[0].setInputData(p
1.toBytes(
"Pune"));
parmList[1].setInputData(p
2.toBytes(
" "));
}
catch(Exception ex)
{
}
ProgramCall pgm = new ProgramCall(o);
pgm.setProgram("/QSYS.LIB/
XXX/XXX.PG
M",parmLis
t);
if (pgm.run())
{
byte s[] = parmList[1].getOutputData(
); // HERE I got only first value of returning array.
parmList[1].getOutputDataL
ength();
//String sts = ((String) (new AS400Text(10,o).toBytes(s[
0])));
}
else
{
AS400Message[] messageList = pgm.getMessageList();
for (int msg = 0; msg < messageList.length; msg++) {
}
}
}
catch(Exception ex)
{
AS400Message[] messageList = null;
}
finally
{
o.disconnectAllServices();
}
}
Start Free Trial