|
Or you could write your own subprocedure. The following sample includes
pieces of CGIDEV2's docmd subprocedure.
****************************************************************************
* docmd
prototype
****************************************************************************
Ddocmd pr 10i
0
D cmd 2000 const varying
options(*varsize)
D rc s 10i
0
C eval rc = docmd('WRKOUTQ
*ALL')
C eval *inlr =
*on
****************************************************************************
* docmd
subprocedure
****************************************************************************
* Executes a CL
command
* Returns 0 if executed without error; otherwise
1.
P docmd
b
D docmd pi 10i
0
D cmd 2000 const varying
options(*varsize)
D cmdlen s 15p 5
D wrkcmd s 2000
C eval cmdlen = %len(cmd)
C eval wrkcmd = cmd
C call(e) 'QCMDEXC'
C parm wrkcmd
C parm cmdlen
C if %error
C return 1
C else
C return 0
C endif
P docmd e
Mel Rothman
CGIDEV2 Author ( get it at http://www.easy400.ibm.it/ )
iSeries Custom Technology Center
Rochester, Minnesota
jon.paris@e400.com wrote:
>
> >> d ovrdbf s 80
> >> *
> >> * Runqry for the requested file
> >> *
> >> C EVAL ovrdbf = 'OVRDBF WHLDE1 SHARE(*YES)'
> >> c callp cmd(%trim(ovrdbf) : %len
> (%trim(ovrdbf)))
>
> If only a literal is being used it would be more efficient to code it this
> way:
>
> d ovrdbf C 'OVRDBF WHLDE1 SHARE(*YES)'
> *
> * Runqry for the requested file
> *
>
> c callp cmd(ovrdbf : %len(ovrdbf))
>
> If multiple options are possible (i.e. ovrdbf needs to contain different
> values) using a variable length field for ovrdbf would also perform better
> and produce "tidier" code. e.g.
>
> d ovrdbf s 80 Varying
> *
> * Runqry for the requested file
> *
> C EVAL ovrdbf = %TrimR('OVRDBF WHLDE1 SHARE(*YES)')
> c callp cmd(ovrdbf : %len(ovrdbf))
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.