Mike,

You call QCMDEXC with two parameters, like so:

CALL 'QCMDEXC' USING CMD CMDLEN.

CMD is the actual command you want to execute (OVRDBF in this case).
CMDLEN is the length of the string in CMD and is defined as PIC 9(10)V9(05)
COMP-3.

As you cycle through your files, you would call QCMDEXC to perform the
OVRDBF. You would then open the file, process it, and close it. You could
then cycle back and call QCMDEXC again.

Here are some quick COBOL excerpts.

In WORKING STORAGE, define:

** MYLIB/MYFILE will contain library and file of desired target
01 MYLIB PIC X(10).
01 MYFILE PIC X(10).

01 CMD.
05 FILLER PIC X(28)
VALUE 'OVRDBF FILE(CBLFILE) TOFILE('.
05 OVRFILE PIC X(22).
01 CMDLEN PIC 9(10)V9(05) COMP-3 VALUE 50.

In the PROCEDURE DIVISION, use:

MOVE 'desiredlibrary' to MYLIB
MOVE 'desiredfile' TO MYFILE
MOVE SPACES TO OVRFILE
STRING MYLIB '/' MYFILE ')' DELIMITED BY ' ' INTO OVRFILE
CALL 'QCMDEXC' USING CMD CMDLEN.

The CBLFILE in the FILE parameter of the OVRDBF command should be the one
referenced in your SELECT statement in the FILE-CONTROL paragraph.

Using the STRING command to build the rest of the OVRDBF command avoids the
problem of embedded spaces in the command if the library and/or file name is
less than 10 characters.

Hope this helps.

Holler if you have any questions.

Enjoy!
Richard



-----Original Message-----
From: cobol400-l-bounces@xxxxxxxxxxxx
[mailto:cobol400-l-bounces@xxxxxxxxxxxx] On Behalf Of Mike Apice
Sent: Tuesday, March 10, 2009 8:06 PM
To: COBOL Programming on the iSeries/AS400
Subject: Re: [COBOL400-L] Cobol / CL question

Thanks Jhn and Beni.
 
Jon.
 
Could you give a quick example of the QCMDEXC or some more detail.  I need
to do exactly that, cycle thru a number of files.
 
Much appreciated.

--- On Tue, 3/10/09, Jon Paris <Jon.Paris@xxxxxxxxxxxxxx> wrote:


From: Jon Paris <Jon.Paris@xxxxxxxxxxxxxx>
Subject: Re: [COBOL400-L] Cobol / CL question
To: "COBOL Programming on the iSeries/AS400" <cobol400-l@xxxxxxxxxxxx>
Date: Tuesday, March 10, 2009, 7:34 PM


Or for that matter use OPEN/CLOSE within the COBOL program and use OVR 
via QCMDEXC if you need to cycle through a series of files.


On 10-Mar-09, at 6:48 PM, Egger Jörg (KIRJ 412) wrote:

OVRDBF is a solution.

OVRDBF FILE(CBLFILE)
       TOFILE(LIBRARY/DISKFILE)

Use the file name that you have in your select statement instead of 
CBLFILE.
TOFILE is the real file name.

Beni

-----Original Message-----
From: cobol400-l-bounces@xxxxxxxxxxxx
[mailto:cobol400-l-bounces@xxxxxxxxxxxx
] On Behalf Of Mike Apice
Sent: 10 March 2009 23:32
To: cobol400-l@xxxxxxxxxxxx
Subject: [COBOL400-L] Cobol / CL question

Heh!  Gang.

Is there a way to pass a variable in CL to 400 Cobol for a file name 
that is always different?

I haven't used ovrdbf.  Is that a possibility?

Thanks.

Mike



--
This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) 
mailing list To post a message email: COBOL400-L@xxxxxxxxxxxx To 
subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
or email: COBOL400-L-request@xxxxxxxxxxxx Before posting, please 
take a moment to review the archives at
http://archive.midrange.com/cobol400-l
.

--
This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) 
mailing list
To post a message email: COBOL400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
or email: COBOL400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/cobol400-l.



Jon Paris

www.Partner400.com
www.SystemiDeveloper.com



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

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.