+1
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
Modernization – Education – Consulting on IBM i
Database and Software Architect
IBM Champion since 2020
"Shoot for the moon, even if you miss, you'll land among the stars." (Les Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them and keeping them!"
"Train people well enough so they can leave, treat them well enough so they don't want to. " (Richard Branson)
"Learning is experience … everything else is only information!" (Albert Einstein)
-----Original Message-----
From: MIDRANGE-L <midrange-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Barbara Morris
Sent: Saturday, 13 June 2026 02:17
To: midrange-l@xxxxxxxxxxxxxxxxxx
Subject: Re: Shelling out CRTLF via QCMDEXC -- question about success/failure
On 2026-06-09 10:57 a.m., Rob Berendt wrote:
I was a big fan of system(), until I was not. I forget why. Others
have alluded to the ease of getting the error with QCAPCMD instead.
I don't like system() because it removes the final escape message from the joblog. If you get an unexpected exception, the only thing you can get from _EXCP_MSGID is the message ID. Any substitution values are lost.
Also, system() doesn't remove any diagnostic messages that precede the final escape message. That can make the joblog look very strange if something bad happens.
For me, the extra coding for QCMDEXC or QCAPCMD is worth it to get a good joblog if something unexpected happens.
--
Barbara
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit:
https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.