Use the RENAME Keyword on the FSPECS.

FDIBDWF3 IF E DISK RENAME(DIBDWF3:DIBDWF3R)

This will rename the record format name within the program. Yeah it'll be
a hassle to do this for every program but saves you from having to rename
the object and changing any program that uses it. FWIW, I don't know when
this keyword was made available.

If this isn't valid for you then, you can change the file name in your
FSPECS to something that doesn't exist on the system. Then in a CL, OVRDBF
the file name to the actual file name. You'll also need this override at
compile time.



On Fri, Apr 20, 2012 at 10:47 AM, Dunk, Michael - Bognor <mdunk@xxxxxxxxx>wrote:

Creating a file named DIBDWF3 with an AS/400 query, to be read in RPG was
causing QRG2122.

Looking at a similar program written some time ago by someone else, the
query file read by RPG had a different record format name.

Using Google I found two links:


http://search400.techtarget.com/tip/Changing-existing-physical-files-record-format wasn't something I could do in a CL program

The following article leads me to wonder if there isn't a command to
change a record format name.


http://www.mcpressonline.com/tips-techniques/sql/techtip-sql-and-i5os-record-format-names.html

The only way I could find to solve this, was to use RNMOBJ to rename the
file. Then the record and file name have different names, a similar to the
above article. Do you know if there is a simple way to change a record
format name?

The compilation error in the RPG program attempting to read the file was:

*...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+....0....+....1....+..
H
*****
300 FDIBDWF3 IF E DISK
20/04/12
400 * Query file
19/04/12 S
* 2122 300 RECORD NAME DIBDWF3 PREVIOUSLY DEFINED AS FILE NAME.
RECORD FORMAT(S): LIBRARY MY_LIB FILE DIBDWF3.
EXTERNAL FORMAT DIBDWF3 DROPPED DUE TO ERROR OR IGNORE.


Best regards,

Mike



------------------------------------------------------------------------------------------------------------
John Wiley & Sons Limited is a private limited company registered in
England with registered number 641132.
Registered office address: The Atrium, Southern Gate, Chichester, West
Sussex, United Kingdom. PO19 8SQ.

------------------------------------------------------------------------------------------------------------
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



This thread ...

Replies:

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

This mailing list archive is Copyright 1997-2019 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].