|
Alex,
I'll wait for the "official" answer, but could it be because Record Level
I/O runs under a different server job (which would be a different QTEMP)
than Command Call? I ran into a similar problem with file locks trying to
use Program Calls and Record Level I/O.
Nick
"Alex Garrison" <agarrison@logtech.com>@midrange.com on 04/12/2000 10:38:46
PM
Please respond to JAVA400-L@midrange.com
Sent by: owner-java400-l@midrange.com
To: <JAVA400-L@midrange.com>
cc:
Subject: rec level i/o to QTEMP
I remember there was some discussion several weeks ago about problems with
rec level i/o to QTEMP.? Would someone mind reposting the solution to the
problem?
Problem:? The rec level i/o classes like KeyedFile or
AS400FileRecordDescription dont seem to see files in QTEMP.? I know the
files exist in QTEMP because I have just done a CPYF to QTEMP using
CommandCall.? As a diagnostic I also did a DSPFD OUTPUT(*PRINT) on the file
in QTEMP again using CommandCall.? The spool file clearly shows the file is
in QTEMP.? When I try to do a
AS400FileRecordDescription.retrieveRecordFormat or KeyedFile.open on the
file, the as/400 insists on telling me that the file doesnt exist in
QTEMP.
BTW:? I do make absolutely sure that I am using the same AS400 object
connection for the whole process.? Also I am using the latest mod2
toolbox.? The as/400 is at v4r4 with fairly recent ptfs.
Here is a little code snippet that fails with a "CPF3012 File STATUS in
library QTEMP not found." when retrieving the record format:
?AS400 host = null;
?host = new AS400("MYSYS","MYUSRPRF","MYPASSWORD");
?host.connectService(AS400.COMMAND);
?host.connectService(AS400.RECORDACCESS);
?CommandCall cmd = new CommandCall(host);
?System.out.println("running command");
?cmd.run("CPYF FROMFILE(MYLIB/STATUS) TOFILE(QTEMP/STATUS) CRTFILE
(*YES)");
?cmd.run("DSPFD QTEMP/STATUS OUTPUT(*PRINT)");
?QSYSObjectPathName filepath = new QSYSObjectPathName("QTEMP","STATUS","
*FILE","MBR");
?KeyedFile file = new KeyedFile(host,filepath.getPath());
?AS400FileRecordDescription recdesc = new
AS400FileRecordDescription(host,filepath.getPath());
?System.out.println("getting record format");
?RecordFormat[] recfmt = recdesc.retrieveRecordFormat();
Sorry to ask for the repost, but this problem is quite frustrating.
Alex Garrison
+---
| This is the JAVA/400 Mailing List!
| To submit a new message, send your mail to JAVA400-L@midrange.com.
| To subscribe to this list send email to JAVA400-L-SUB@midrange.com.
| To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner: joe@zappie.net
+---
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.