Here's how I solved this problem in a similar situation.  I created a new PF
file with a long key field and a field for the RRN of the original record. 
At run time I clear the PF and cat the fields I want to use for the sorting.
 Once that file is built I can then run it as the primary fiel and access
the original records with a chain on RRN.

Hey, its not fancy but it does work.
 
 
 
---------------------------------------------------------
Booth Martin   http://www.MartinVT.com
Booth@xxxxxxxxxxxx
---------------------------------------------------------
 
-------Original Message-------
 
From: Midrange Systems Technical Discussion
Date: Wednesday, April 30, 2003 13:49:31
To: Midrange Systems Technical Discussion
Subject: Sorting
 
I need to sort some files. The sorts are dynamic and the keying will
only be known at run-time. The files often have multi-million record
counts and an average reclen of something like 1k.
 
I will be starting with a PF and need to either sort into a 2nd PF or
preferably back into the same PF. Those are requirements that I have no
control over.
 
Currently this is done with FMTDTA, but we are running into the key
length limitation, and so looking for other solutions.
 
Thoughts:
 
1. Create an LF and copy from that into a 2nd PF.
- But I would have to write DDS source, compile it, then copy, then
delete the LF. Too many steps.
 
2. Build an OPNQRYF string and copy from that into a 2nd PF.
- But building the OPNQRYF string is tedious and error-prone.
 
3. Write something in C to drive QSORT(), sorting back into the original
file.
- Seems like a good idea, but do I really want to process a
multi-million record file this way?
 
4. Use some other "canned" sorting function.
 
Any comments on these methods, or any other ideas? The OPNQRYF is the
only option I can think of that is somewhat "clean."
NOTICE: This E-mail may contain confidential information. If you are not
the addressee or the intended recipient please do not read this E-mail
and please immediately delete this e-mail message and any attachments
from your workstation or network mail system. If you are the addressee
or the intended recipient and you save or print a copy of this E-mail,
please place it in an appropriate file, depending on whether
confidential information is contained in the message.
 
 
_______________________________________________
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.cgi/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 ...

Replies:

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.