× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



James,

This discussion has gone on quite a while on how to build a index over an
unknown number of files in unknown libraries. Do you really need to access
all of the records at once? Rich Duzenbury had a suggestion about building a
list of files, and reading the files individually. I've also thought about
just doing a CPYF to a summary file in QTEMP, and then a program could
access the records form this file. The file would disappear at the end of
the job, so that each time it runs it would be rebuilt, but it would always
have a fresh copy of the data in the individual files.

Also, along the lines of working with a list a files is the idea of
retrieving a list of files, and using some selection (customer ID?) to chose
the individual file. The program would then do an OVRDBF and open the file.

Just what type of work do you need to do with this huge join? Are you
building a report, or trying to do some updates? How many records are in
these files? Hundreds of records per file or 50,000 records per file?  


Steve Morrison
Beacon Insurance
940-720-4672 

-----Original Message-----
From: Vern Hamberg [mailto:vhamberg@xxxxxxxxxxxxxxxxxxxxxxxxx] 
Sent: Wednesday, September 22, 2004 1:33 PM
To: Midrange Systems Technical Discussion
Subject: Re: Summary view of arbitrary number
ofidentically-named-and-formatted physical files in separate libraries

If the number of physical files is known and constant, you can use a logical
file, listing all the files in PFILE. Use the K-spec and badabing!

If not known but a list is buildable, I suggest a QMQRY with a substitution
variable for the library and file names. Get the list by whatever means,
loop through it, running STRQMQRY for each file with outfile *add for each
(clear the outfile first, then use *ADD for all). The outfile could be an
empty dupe of the others, with the same key, maybe. The statement in the
QMQRY could be

select * from &LIBRARY/&FILE

and the command could be

strqmqry qmqrylib/qmqrynam output(*outfile) outfile(qtemp/outfile)
outmbr(*first *add) setvar((library &ODLBNM) (file &ODOBNM))

The CL variables given assume an outfile from DSPOBJD. But maybe you'd use
DSPFD *ALLUSR/yourfile type(*RCDFMT)

Vern

At 09:14 AM 9/22/2004, you wrote:
>Chuck Lewis wrote:
>
> > Maybe I am missing what you want here, but how about:
> > WRKOBJ OBJ(*ALL/"your file name") OBJTYPE(*FILE)  ?
> > Or  were you wanting more detail than that ? You could use that and 
> > get it to a file, then read the file and do a DSPFD, etc. from 
> > there...)
>
>No, I'm not the slightest bit interested in a list of filenames; the 
>idea is to have every record from all of these 
>identically-named-and-formatted files appear in what looks, to RPG, 
>like a single file, keyed on the same field as the physical. Preferably 
>with a way to tell which library's physical any given record came from.
>
>--
>James H. H. Lampert
>Professional Dilettante
>http://www.hb.quik.com/jamesl
>http://members.hostedscripts.com/antispam.html
>http://www.thehungersite.com
>
>Help America's Passenger Trains. http://www.saveamtrak.org
>
>Read My Lips: No More Atrocities!
>
>--
>This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing 
>list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, 
>unsubscribe, or change list options,
>visit: http://lists.midrange.com/mailman/listinfo/midrange-l
>or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a 
>moment to review the archives at 
>http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/midrange-l.


As an Amazon Associate we earn from qualifying purchases.

This thread ...


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

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