Difference between revisions of "Execute System Command (QCMDEXC)"
From MidrangeWiki
DaveLClarkI (talk | contribs) |
DaveLClarkI (talk | contribs) |
||
Line 12: | Line 12: | ||
</pre> | </pre> | ||
− | An RPG/LE free-form alternative: | + | An RPG/LE fully free-form alternative: |
<pre> | <pre> | ||
− | + | //============================================================================= | |
− | + | // IBM API to Execute a System Command | |
− | + | // | |
− | + | // EXAMPLE: | |
− | + | // Monitor; | |
− | + | // VarStr = 'DLYJOB DLY(15)'; | |
− | + | // CallP IBMAPI_ExecSysCmd(VarStr: %len(VarStr)); | |
− | + | // On-Error *All; | |
− | + | // Reset ApiErrC; // trap API errors | |
− | + | // CallP IBMAPI_SendPgmMsg( EXCP_MSGID: 'QCPFMSG *LIBL' | |
− | + | // : EXCP_DATA: %len(EXCP_DATA) | |
− | + | // : '*ESCAPE': '*': 0: msgkey: ApiErrC ); | |
− | + | // If (ApiErrC.BytAvail > *zero); // if an error occurred | |
− | + | // Return *Off; // indicate another error | |
− | + | // EndIf; | |
− | + | // EndMon; | |
− | + | // | |
− | + | // DOCUMENTATION: | |
− | + | // https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/apis/qcmdexc.htm | |
− | + | //============================================================================= | |
− | + | dcl-pr IBMAPI_ExecSysCmd extpgm('QCMDEXC'); | |
− | + | pCmdStr char(32702) const options(*varsize); | |
− | + | pCmdLen packed(15:5) const; | |
− | + | pCmdIGC char(3) const options(*nopass); | |
− | + | end-pr; | |
</pre> | </pre> | ||
Revision as of 15:49, 7 December 2018
Summary
For more information on this API, visit Execute Command (QCMDEXC) API (right-click to open link in a new tab).
Prototype for the QCMDEXC API
DQCMDEXC PR EXTPGM('QCMDEXC') D prCmdStr 32767A CONST D prCmdLen 15P 5 CONST
An RPG/LE fully free-form alternative:
//============================================================================= // IBM API to Execute a System Command // // EXAMPLE: // Monitor; // VarStr = 'DLYJOB DLY(15)'; // CallP IBMAPI_ExecSysCmd(VarStr: %len(VarStr)); // On-Error *All; // Reset ApiErrC; // trap API errors // CallP IBMAPI_SendPgmMsg( EXCP_MSGID: 'QCPFMSG *LIBL' // : EXCP_DATA: %len(EXCP_DATA) // : '*ESCAPE': '*': 0: msgkey: ApiErrC ); // If (ApiErrC.BytAvail > *zero); // if an error occurred // Return *Off; // indicate another error // EndIf; // EndMon; // // DOCUMENTATION: // https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/apis/qcmdexc.htm //============================================================================= dcl-pr IBMAPI_ExecSysCmd extpgm('QCMDEXC'); pCmdStr char(32702) const options(*varsize); pCmdLen packed(15:5) const; pCmdIGC char(3) const options(*nopass); end-pr;