• Subject: RE: QCMDEXC from RPG program
  • From: "Leland, David" <dleland@xxxxxxxxxx>
  • Date: Fri, 23 Jan 1998 08:25:20 -0500

Well, if it does, I'd sure like to know how since by doing it in a
sub-procedure you're introducing another invocation level and QCMDEXC
only works on current invocation level.  Example?

Dave

>----------
>From:  Stone, Brad V (TC)[SMTP:bvstone@Taylorcorp.com]
>Sent:  Thursday, January 22, 1998 6:42 PM
>To:    RPG400-L@midrange.com
>Subject:       RE: QCMDEXC from RPG program
>
>It will work if the file you are overriding is user controlled and
>closed   
>before the override, then opened after the QCMDEXC.  Even without   
>OVRSCOPE(*JOB).
>
>Brad
> ----------
>From:  Leland, David
>Sent:  Thursday, January 22, 1998 5:02 PM
>To:  bvstone
>Subject:  RE: QCMDEXC from RPG program
>
>
>Of course you realize that this doesn't work when the command you want
>to execute is an override (OVRDBF, OVRPRTF, etc.) unless you use
>OVRSCOPE(*JOB), which can be risky.
>
>Dave
>
>>----------
>>From:  David Morris[SMTP:dmorris@plumcreek.com]
>>Sent:  Thursday, January 22, 1998 9:37 AM
>>To:  RPG400-L@midrange.com
>>Subject:  Re: QCMDEXC from RPG program
>>
>>It looks like you need to define the command string length as 15P 5.=20
>>You might=20
>>also consider prototyping the call to make it easier to work with.  I
>>think there is an=20
>>example in the manual.  Here is what ours looks like:
>>
>>     DQCmdExc          PR                  EXTPGM('QCMDEXC')   
>         =20
>>        Execute a command.
>>     D PR_CmdStr                   4096A   CONST OPTIONS(*VARSIZE)
>>     D PR_CmdStrLen                  15P 5 CONST
>>...
>>     C                   CALLP     QCmdExc(CmdStr:
>>     C                                     %LEN(%TRIMR(CmdStr)))
>>
>>We built a this into a subprocedure so we can do something like:
>>EVAL ErrFlg =3D ExcCmd('SndMsg Msg(''Bla Bla Bla'')': RtnMsgID:
>>RtnMsgTxt)
>>The return message is set from the program status data structure.
>>
>>David Morris
>>
>>>>> maena <maena@correo.com> 01/21 11:59 AM >>>
>>
>>I'm trying to use the QCMDEXC utility from an ILE RPG program, but I
>>receive a runtime error which says that the syntax command passed to
>>QCMDEXC is incorrect. The same sentence used from the command line is
>>successful, so I suppose that the problem is related with the
>>parameters
>>definition.
>>
>>Here you have an example:
>>
>>*D specs:
>>VCmd S 255
>>VLen S 15S 2
>>
>>*C specs
>>CmdParms PLIST
>>  PARM   VCmd
>>  PARM  VLen
>>
>>  EVAL VCmd=3D'SNDMSG(''TEXT'') TOUSR(QSYSOPR)'
>>  EVAL VLen=3D29
>>
>>  CALL 'QCMDEXC' CmdParms
>>
>>Could anyone point me to the error in my RPG code?
>>
>>-------------------------------------
>>M=AA Elena V=E1zquez
>>mailto:maena@correo.com=20
>>-------------------------------------

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* This is the RPG/400 Discussion Mailing List!  To submit a new         *
* message, send your mail to "RPG400-L@midrange.com".  To unsubscribe   *
* from this list send email to MAJORDOMO@midrange.com and specify       *
* 'unsubscribe RPG400-L' in the body of your message.  Questions should *
* be directed to the list owner / operator: david@midrange.com          *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2021 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.