The program currently has an unqualified ON-ERROR. Per the docs, *ALL is the default extender. Are you saying that in your case ON-ERROR missed errors that "ON-ERROR *ALL" caught? Note that there's nothing in the joblog showing anything out of the ordinary.
Thanks
-----Original Message-----
From: dlclark@xxxxxxxxxxxxxxxx [mailto:dlclark@xxxxxxxxxxxxxxxx]
Sent: Tuesday, March 10, 2020 12:24 PM
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxxxxxxxx>
Subject: RE: QCMDEXC & OVRPRTF anomaly
"MIDRANGE-L" <midrange-l-bounces@xxxxxxxxxxxxxxxxxx> wrote on 03/10/2020
01:05:21 PM:
The print file in question is closed immediately before the QCMDEXC
and then opened immediately after. Neither the OPEN nor the CLOSE
give any errors.
Maybe you need a more robust check for errors in QCMDEXC. It seems to me that I remember a situation where errors were occurring in QCMDEXC but were NOT trapped as errors in RPG (or the CL that called RPG) and went undetected unless I coded something like the following to record
the error. I could be confused, though. ;-)
monitor; // execute the change
callp IBMAPI_ExecSysCmd(VarStr: %len(VarStr));
on-error *all; // exception occurred?
pMessage(1).inUse = *on; // indicate message used
pMessage(1).Id = EXCP_MSGID; // from PSDS
pMessage(1).Type = '*ESCAPE'; // set message type
pMessage(1).File = 'QCPFMSG'; // set message file
pMessage(1).FLib = '*LIBL'; // set msgfile library
pMessage(1).Data = EXCP_DATA; // from PSDS
iResult = *off; // return failure indication to caller
endmon;
Sincerely,
Dave Clark
As an Amazon Associate we earn from qualifying purchases.