Jim,

 

I am just now starting to see the value of creating views 'on the fly'
and am starting to implement that is a few of my reports.

But it takes a while for old dogs to learn new tricks. That is why I
immediately think of doing things the 'old' way.

Thanks for the good reminder.

 

Jim

 

________________________________

From: [email protected] [mailto:[email protected]] On Behalf Of James
Bentley
Sent: Sunday, February 14, 2010 1:37 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Report Issue

 

Thanks,

All of this could be embedded in report in appropriate ON BEFORE DESIGN
and ON BEFORE START EEP. You could further add WHERE clauses to restrict
selection.

Some times it just takes a different way of approaching a problem. 
One thing I learned in the early RBase days was that if you find
yourself doing a lot of calculations and data manipulation in the report
writer you should move as much calculations as possible into a view and
use the view to drive the report.

 

Jim Bentley
American Celiac Society
[email protected]
tel: 1-504-737-3293

 

 

________________________________

From: Jay Ward <[email protected]>
To: RBASE-L Mailing List <[email protected]>
Sent: Sun, February 14, 2010 12:25:41 PM
Subject: [RBASE-L] - RE: Report Issue




Jim, thank you.  It worked perfectly.  Seems like a long way around what
used to be a simple programming issue but it works!

 

I appreciate not only your efforts but also all those who kept trying to
lead me towards water.  Thank you all.

 

Jay Ward

 

From: [email protected] [mailto:[email protected]] On Behalf Of James
Bentley
Sent: Sunday, February 14, 2010 11:38 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Report Issue

 

Jay,
To solve your problem you need to base the report on a view which is a
view of views
The first view :
CREATE VIEW TransRow2Col (EventDate,Chairman,Leader,Essayist) AS SELECT
+

DateColName,+

(IFEQ(duty,'Meeting Chairman',name,' ')) +

(IFEQ(duty,'Discussion Leader',name,' ')) +

(IFEQ(duty,'Essayist',name,' ')) +

FROM TableName.


This will create a 4 column view of date, and 3 name columns with either
a name or blank

Then define the view which will drive the report.
CREATE VIEW ReportView (EventDate,Chairman,Leader,Essayist) AS SELECT +
EventDate,MAX(Chairman),MAX(Leader),MAX(Essayist) FROM TransRow2Col +
GROUP BY EventDate

This view will give you one row for each date with Names in
Chairman,Leader,Essayist columns 
where one is available or blank if a name is not available.

Jim Bentley
American Celiac Society
[email protected]
tel: 1-504-737-3293

 

 

________________________________

From: Jim Belisle <[email protected]>
To: RBASE-L Mailing List <[email protected]>
Sent: Sun, February 14, 2010 9:37:14 AM
Subject: [RBASE-L] - RE: Report Issue



Jay,

 

I need to leave at this time.

If you have a break on the date field and you place the IFEQ var, one
for each col, in the footer, you should end up something like this:

 

DATE                Chairman          Leader              Essayist

02/14/2010        name                name                name

 

The only time you should get a blank, is if there is no name for that
field on a given date.

 

Jim

 

 

________________________________

From: [email protected] [mailto: [email protected] ] On Behalf Of Jay
Ward
Sent: Sunday, February 14, 2010 9:24 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Report Issue

 

Jim, that gives me a blank instead of the name that I want.

 

From: [email protected] [mailto: [email protected] ] On Behalf Of Jim
Belisle
Sent: Sunday, February 14, 2010 10:09 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Report Issue

 

Jay,

 

Try (IFEQ(duty,'Meeting Chaitman',name,' '))

 

I think the two single quotes will give you a blank if that is what you
want.

I hope I understand what you want.

 

If it still does not work, just show a few lines in an example to me of
how it shows on the report.

 

Jim

 

 

________________________________

From: [email protected] [mailto: [email protected] ] On Behalf Of Jay
Ward
Sent: Sunday, February 14, 2010 9:01 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Report Issue

 

Jim, you got me a lot closer.  Different names appeared for the first
time but the 'ifeq' approach requires a response when it isn't equal so
it creates in your example a 0.  Since you are evaluating one line of
detail at a time then the last name for the date is correctly placed but
the others are 0.  If you could say "do nothing" instead of "0" it would
work.  That I don't know how to do.  Thanks. Jay

 

From: [email protected] [mailto: [email protected] ] On Behalf Of Jim
Belisle
Sent: Sunday, February 14, 2010 8:54 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: Report Issue

 

Jay,

 

You may have found the answer to your problem but if not, maybe this
will help.

I have been reading the list on this subject.  I do not usually give my
2 cents because I am a novice compared to those on the list.

If I understand your table structure, I would think three IFEQ variables
should do the trick.

I have a similar report I use for the type of sales our company makes.

 

If your table column names are DATE, NAME, & DUTY then set your
variables as such:

Vmchair = (IFEQ(duty,'Meeting Chairman',name,'0'))

Vdlead = (IFEQ(duty,'Discussion Leade'r,name,'0'))

Vessay = (IFEQ(duty,'Essayist',name,'0'))

 

Your four columns on the report would be as such:

Date   Chairman     Leader         Essayist

Col var         Vmchair       vdlead          vessay

 

You would have one line per date with each col filled in with the proper
name.

That should do the trick.

I still use 7.6 so Version 9 may be different.

 

Jim

 

 

________________________________

From: [email protected] [mailto: [email protected] ] On Behalf Of Jay
Ward
Sent: Friday, February 12, 2010 2:36 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Report Issue

 

I am trying to print a report from a file.  File basically has three
columns: date, name and duty.  Duty can be one of three.  I am
attempting to print a report with four columns.  Date and then the
individual's name who performed the duty in the appropriate column.  I
have set up three variables.  One for each of the duties.  I have
attempted to set the variables with the name of the person who performed
the duty.  In the file all three duties are described in the single
column.  The report is set to break on the date.  I have no lines in the
detail section, only in the break follower since I believe the variables
will be propagated by the three rows that are read.  I have the clear
variable setting to clear after each break.  I get the appropriate break
on date but the three "duty" columns show the same name throughout the
report.  I get the correct dates shown for the years covered by the
report.  I've got to be doing something dumb but I can't figure it out
so I would appreciate direction from an expert.  I am on the current
release of eXtreme9-64.  Thanks.  Jay Ward

 

 

Reply via email to