Now I have a program that has to read all the members in all the
source files.
I compiled the program with: QRPGLESRC
In CLLE I do the override to: QRPGLESRC to MYLIB/SRCFILE member
*ALL.
In RPGLE source I have this filestatement:
Fqrpglesrc ip e DISK infds(fileds)
rename(qrpglesrc:rpgrec)
The problem now is that when I do an override to: QDDSSRC the
formatname is QDDSSRC
and that gives a conflict when I call the program.
The only solution I can think off is: recompile the program in CLLE
after the correct override is set.
Is there a better solution to override the external formatname?
thx
Jaap
Hi,
You can try to create source file MYSRCF and rename it QRPGLESRC
you create now MYSRCF again and you rename it QCLSRC
etc.
All your files would have MYSRCF record name ?
best regards,
Hi,
I think there is no way to do this, but a very simple work-around:
Make a copy of your rpgle-program with a new name, change the file and
record-format to qddssrc, and compile the new program.
From CLLE then call the new program in case of QDDSSRC ...
Good luck !
-- Peter
It might be worth a try creating a logical file over the source file by
pretending that the source file is an ordinary physical file with three
fields in it.
--
Don't even get me started on the MCSEs I know. It's a miracle of
modern technology that some of these fsckwits still draw breath,
much less a paycheck.
-- Marc Bowden
Must admit multiformatted logical was first thought, but no access to
check if feasible I'm afraid.
Ian
FWiW there is no need to CRTSRCPF and then RNMOBJ to effect a
common record format [name]. Just create each source physical file
from the same DDS source; e.g. using CRTPF FILE(TheLib/TheSrcPF)
SRCFILE(SrcLib/DDSsrcPF) SRCMBR(MySrcPFDDS) FILETYPE(*SRC) MBR(*NONE).
A sample DDS source for a PF-SRC with RcdFmt name MYSRCF:
R MYSRCF
SRCSEQ 00006S02
SRCDAT 00006S00
SRCDTA 80A
Regards, Chuck
There is no function of common data management to override the
external format name, because the different name suggests a
different [possibly incompatible] format. The format name is part
of the hash that defines the format level identifier :-( If the
capability existed to perform as what was alluded to be desirable
[i.e. the program functions the same against each file irrespective
of format name], then the SRCDTA field would have to be the same for
all of the named TOFILE() on the OVRDBF request. As such, ignoring
the level checking establishes the assumption that all of the fields
are the same order and attributes [e.g. length, type, etc.]. Since
that seems to be the assumption for the described situation and
desired effect, why not just use LVLCHK(*NO) on the override to
database file request?
Regards, Chuck
execute the override dababase file to point to the source file and
member 'ovrdbf libname/filename(member)' and then open the file.
hi,
an other way..
you can use internal definition for QRPGLESRC file (only 3 fields..)