> From: Mark Johnson
> 
> How can Basic be limiting. It has everything English (sic)
> has and so much more. In fact, there are many reports that
> 'turn the corner' and cannot be done in English and must be
> done in Basic.

If you will stipulate that - generally speaking - the most important
attribute of SOFTWARE QUALITY is MAINTAINABILITY then Retrieve /
UniQuery / MVQuery / even English is - generally speaking - the superior
environment for reporting.
READABILITY and CHANGEABILITY are part of MAINTANABILITY.  The query
language, being a higher level than Basic is generally more readable.
The self-contained MODULAR nature of dictionary items lends itself to
allowing reports to be easily changed.   The can also be REUSED on other
reports.

In that sense, basic is much more limiting.

For example (if I may expand on what I *think* Dave S means), if you
have reports defined in the Query language, it is often very simple to
redirect the output in a new CSV format ( e.g., UD: DELIM keyword, UV:
SAVING EVAL "fld1:char(9):fld2").  That is usually much easier to do
than changing a basic program.  And when you're done, you've reused
existing code which needs to be maintained once, rather than duplicating
a basic program whose processing is  integrated and not modular.  When a
change needs to be made (e.g., selection criteria or add output fields,
you have to change 1 shared phrase or I-descriptor rather than dig
through the guts of 2 basic programs.  Often the maintenance programmer
will forget there are 2 programs, change only one and the divergence
begins.

We've had this discussion before.  You can look through the archives and
see that I respectfully disagree with Mark's theory of reporting.  If
and when I get to set programming standards, I say all reports should be
written in the Query language, unless you can prove your case for doing
otherwise.
There are also techniques involving I-descriptor subroutines, named
common, phrases, etc. that need to be part of the programming standard.
(The SRS.UV.HEADER subroutine mentioned in a recent thread demonstrates
some good practices.)   
One reason for not using the query language is for pretty reports that
go to external clients, where the Query language's output format is too
limiting.
Another admitted weakness is the lack of a tool built into any MV IDE to
easily display or group all the modular components of a report logically
for a programmer to browse through them.

-------

Having said all that, Mark's original question was a good one and the
above tangential discussion does not address it.  There are tons of
legacy reports from tons of legacy systems (not just MV!) that need to
be deciphered and reformatted into modern spreadsheets.
  
I think Mark's original question was this: 
Suppose you do not have access to whatever produces the reports, and all
you have is the output report.  What is the best way to extract its data
into a CSV file or spreadsheet?
I believe a number of people suggested products to do just that.  This
is not just a U2 or MV question & answer.

 - Chuck Stevenson
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to