× 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.



Besides that, the OP stated that they wanted to avoid their current
proposed solution that would "create an intermediate file, with the
Last Name as a separate field".

Ah, but both our solutions are guilty of that! I cannot anticipate a
solution (other than the OP's proposed "write a program to do it"
[paraphrased]) that would avoid that step.

Dennis Lovelady
http://www.linkedin.com/in/dennislovelady
--
"A celebrity is a person who works hard all his life to become well known,
and then wears dark glasses to avoid being recognized."
-- Fred Allen

Chuck wrote:

On 21-Jan-2012 21:08 , John Yeung wrote:
It's interesting to see the solutions people come up with, based to
a very large extent on what they are comfortable with. "When all you
have is a hammer, all your problems start looking like nails" and
all that.

I'm as guilty of this as anyone. But trying to look at this as
objectively as possible, assuming Dennis's "Unixy" solution works
(and I think it does), it seems like the quickest and most
straightforward to me.

By the way, this technique has a name: It's the
decorate-sort-undecorate pattern (or idiom). It's very useful, and
can be applied in various ways in various languages.


Or, the problem might just be a nail. Since the OP was not strict
in defining their problem\scenario, for lack of a script demonstrating
the creation of the "flat file" [STMF, CRTPF, other?] and some sample
data, what the scenario looks like to each reader is influenced by
their perception of what the writer may only have alluded; their
having failed to express very specifically. The OP even failed to
suggest where the data needed to be made available; although
mentioning the sorting would be a "one time effort", does that
necessarily imply that the ordered data must be placed into a similar
"flat file", or perhaps just made available to a program is acceptable.?

If the data is already EBCDIC stored in a database physical "flat"
file, and because all rows need to be processed for "sort" according
to the OP, then the best tool for the job would presumably [and
probably generally] be a tool which acts directly on that data rather
than requiring copying\moving of the data elsewhere before acting on
that data.? Seems that multiple copies [two between EBCDIC and ASCII
thus possibly also changing the 0x1C\IFS\"Interchange File Separator"
control character to and then from the 0x1A\IS4/FS\"Information
Separator Four/File Separator" character] involves a lot of possibly
excessive\unnecessary work.?

Besides that, the OP stated that they wanted to avoid their current
proposed solution that would "create an intermediate file, with the
Last Name as a separate field". And their own solution description
which they apparently have chosen to avoid, seems little different than
the "Unixy"
solution that was proposed.?

So while the likely _implementation_ of the SQL to complete the
work would probably be effectively the same as what the OP was
thinking to do, the SQL solution sure would look different from their
perspective.
The data could be selected as just the unconverted field-as-row-data
from the file.mbr using a SQL "SELECT * FROM TheFile ORDER BY _Last
Name_ " without the result of the ordering expression that defines
"Last Name" becoming part of, thus no need to be removed from, any
system-generated intermediate copy; i.e.
unlike the user-generated intermediate copy proposed solutions.

Regards, Chuck


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.