Emmitt:

I do use temporary tables and views to generate very complex reports. I have
also come up with my own version of 'reports within reports" for the
following very simple report that worked great under DOS but would not under
Windows, because of the page feed at the end of reports.

I have a Work Order master table that has 3 sub-tables: manpower, materials
and equipment. Under DOS, I created separate reports for the work order
table and 3 sub-tables and printed them all sequentially in one page; under
WINDOWS, I ended up with 4 pages, one for each report. My solution was to
write code that scans the 3 sub-tables individually and takes the data,
formats it (lots of RJS, LJS, CTXT) and concatenates into 3 long note
fields, I create separate variables with totals when needed. The report runs
off the Work Order table and it simply prints the note fields (correctly
sized and with expand ON) for the data and totals right below text headers
in the report. It works fairly well, although there is a limit on the size
of the note filed (4000+ characters). Since most of my lines of data have
app. 120-150 characters/line of data, I can put app. 30 lines of data for
each sub-tables which, in most cases, is enough....and so I have 4 reports
in one!!!

And then there are reports, such as those where I need to display
maintenance work done on roadways features, obviously the work they do
(detail) is different not only on the parameter types but also in the
number, in addition, the user sometimes wants some parameters highlighted
(bold) for bridges and different ones for signs. PAGEMODE is ideal for this
situation, where trying to change the format within a detail line may not be
feasible or possible.

Because of my engineering background, I always try to use the proper tool
for the job. I would be safe to state that 99.9% of the time, the Report
Designer and a combination of tables/temporary tables/views will be the best
tool (after all, I have only one report left that uses PAGEMODE), but then,
occasionally PAGEMODE can be the better tool...I am just glad that we have
all these tools available and it is up to each one of us to determine which
one is the best, based on our own programming strengths/weaknesses and/or
our own likes/preferences.

All things considered, I believe that Razzak said it best:

"Just ask yourself, how many other DBMS will let your work, migrate
and be very PRODUCTIVE using cross-platform capabilities of the
Windows and DOS versions at the same time?
Only R:BASE!
We simply do not realize what we have until we step back and take
a look at it.
Enjoy the POWER and FLEXIBILITY of R:BASE!
The BEST is yet to come ..."

As I said before, once "reports within reports" is implemented on 7.0, all
these issues will be moot... right Razzak?

Javier,

Javier Valencia, PE
President
Valencia Technology Group, L.L.C.
14315 S. Twilight Ln., Suite #14
Olathe, KS  66062-4571
(913)829-0888
(913)649-2904 FAX

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Emmitt Dove
Sent: Wednesday, February 12, 2003 4:03 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Pagemode in Windows


>Brad, Emmitt:
>It is not as easy as it sounds.

Javier,

With all due respect (and certainly no intent to minimize the complexity to
which you refer), I'd like to suggest that you expand your thinking with
respect to the use of a temporary table.  Since it is up to you, the system
architect, to design the temporary table to suit your needs, you can put
any number of columns in place that may or may not contain data,
conditional as you suggest.  These columns could even contain data that you
wish to place in headers and footers.  When the report writer retrieves the
first row of a new section, extra columns could contain information for the
header; likewise, the last row for a section could contain data for the
footer.

You can even do conditional labels in headers - test whether a field
contains data or is null, and if not null print the label otherwise print a
space.  Or print two different labels conditional on the content of a
column on the temporary table.  Or, to simplify that logic, put the labels
in the columns on the temporary table and place fields on the report
instead of labels.

It may even be possible, though I have not tried it, to use similar
techniques to create your 'report within a report.'  Simply ask whether one
of these reports could be created fully within a report header or a report
footer by populating columns on the first or last row of a temporary table.

With PAGEMODE you have a blank piece of paper and you are in control of
what goes where.  Look at your Windows report based on a temporary table
the same way, and determine what you need to add to the temporary table to
accomplish your goals.  You are in control.

There are many different ways to skin this particular cat.  I have used
PAGEMODE extensively in DOS, and I'm always looking for the easy way to
convert to Windows in order to take advantage of the fonts and formatting
available in Windows. Often that is to use the techniques I've discussed
instead of trying to reinvent the wheel in Windows.

Emmitt Dove
Manager, DairyPak Business Systems
Blue Ridge Paper Products, Inc.
40 Lindeman Drive
Trumbull, CT  06611
(203) 673-2231
[EMAIL PROTECTED]
[EMAIL PROTECTED]

Reply via email to