newsgroups-index (beta)

Current group: dbase.reports

average of all Group1

average of all Group1  
Larry Kinder
 Re: average of all Group1  
Geoff Wass
 Re: average of all Group1  
Larry Kinder
 Re: average of all Group1  
Michael Nuwer [dBVIPS]
 Re: average of all Group1  
Michael Nuwer [dBVIPS]
 Re: average of all Group1  
Geoff Wass
 Re: average of all Group1  
Todd Kreuter [dBVIPS]
 Re: average of all Group1  
Geoff Wass
 Re: average of all Group1  
Todd Kreuter [dBVIPS]
 Re: average of all Group1  
Geoff Wass
 Re: average of all Group1  
Todd Kreuter [dBVIPS]
 Re: average of all Group1  
Michael Nuwer [dBVIPS]
 Re: average of all Group1  
Todd Kreuter [dBVIPS]
 Re: average of all Group1  
Michael Nuwer [dBVIPS]
 Re: average of all Group1  
Todd Kreuter [dBVIPS]
 Re: average of all Group1  
Larry Kinder
 Re: average of all Group1  
Michael Nuwer [dBVIPS]
 Re: average of all Group1  
Geoff Wass
 Re: average of all Group1  
Geoff Wass
From:Larry Kinder
Subject:average of all Group1
Date:Sun, 26 Dec 2004 21:23:24 -0600
//Is it possible to display the average of the subtotals?
Thanks, Larry Kinder

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1 = new
TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1)
height = 0.1667
left = 5.8
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "999,999"
text =
{||this.parent.parent.agSum({||this.parent.rowset.fields["rCALLS"].value})}
endwith

//How can I change this to give the average of each group rather than the
average of each detail?

this.reportGroup.footerBand.TEXTRCALLS1 = new
TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRCALLS1)
height = 0.1667
left = 5.7188
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "999,999"
text =
{||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rCalls"].value})}
endwith
From:Geoff Wass
Subject:Re: average of all Group1
Date:Wed, 29 Dec 2004 13:26:23 -0500
Larry Kinder wrote:
> //Is it possible to display the average of the subtotals?
> Thanks, Larry Kinder
>
> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1 = new
> TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
> with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1)
> height = 0.1667
> left = 5.8
> top = 0.0
> width = 0.5208
> variableHeight = true
> prefixEnable = false
> colorNormal = "b+"
> alignHorizontal = 2 // Right
> picture = "999,999"
> text =
>
{||this.parent.parent.agSum({||this.parent.rowset.fields["rCALLS"].value})}
> endwith
>
> //How can I change this to give the average of each group rather than
> the average of each detail?
>
> this.reportGroup.footerBand.TEXTRCALLS1 = new
> TEXT(this.reportGroup.footerBand)
> with (this.reportGroup.footerBand.TEXTRCALLS1)
> height = 0.1667
> left = 5.7188
> top = 0.0938
> width = 0.6
> variableHeight = true
> prefixEnable = false
> colorNormal = "b+"
> alignHorizontal = 2 // Right
> picture = "999,999"
> text =
>
{||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["
rCalls"].value})}
> endwith



Larry,

Are you wanting to take the sum of each group and calculate a single average
or are you wanting to calculate the average for each group and then
calculate another average of the averages? The former is equivalent to the
average which you are already getting (an average of all the details) and
the latter is generally not useful unless all groups are of equal size (in
which case, such an average of averages is the same as an average of all the
details).

If you want to do it, I think you could use the .canRender() event and a
custom property or two to track the average of each group.

--

:-)


----------
Geoff Wass (dBVIPS)
Montréal, Québec, Canada


==========
=======
====
=
More dBASE information at http://geocities.com/geoff_wass

Please reply in the news groups only.
Have you backed up your work?!
=
====
=======
==========
From:Larry Kinder
Subject:Re: average of all Group1
Date:Wed, 29 Dec 2004 13:24:39 -0600
Geoff,

Thanks for your reply, I posted a demo in the binaries, hoping someone will
take a look. Already have a feeling the answer is
this.reportGroup.footerBand.TEXTRCALLS1
will not give me the average of
this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1

Thanks
Larry Kinder

"Geoff Wass" wrote in message
news:FqXMzSd7EHA.1844@news-server...
> Are you wanting to take the sum of each group and calculate a single
> average
> or are you wanting to calculate the average for each group and then
> calculate another average of the averages? The former is equivalent to the
> average which you are already getting (an average of all the details) and
> the latter is generally not useful unless all groups are of equal size (in
> which case, such an average of averages is the same as an average of all
> the
> details).
>
> If you want to do it, I think you could use the .canRender() event and a
> custom property or two to track the average of each group.
From:Michael Nuwer [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 17:04:06 -0500
Larry Kinder wrote:

> Geoff,
>
> Thanks for your reply, I posted a demo in the binaries, hoping someone will
> take a look. Already have a feeling the answer is
> this.reportGroup.footerBand.TEXTRCALLS1
> will not give me the average of
> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1

Larry,

Please take a look at the report file in the binaries group. I'm not
sure I have all the details correct, but the basic functionality should
be there.

--
Michael Nuwer
http://www.ChelseaData.ca/dLearn/
http://www.nuwermj.potsdam.edu/dSamples/
From:Michael Nuwer [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 14:26:16 -0500
This is a multi-part message in MIME format.
--------------080303010800080806020507
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Larry Kinder wrote:
> Geoff,
>
> Thanks for your reply, I posted a demo in the binaries, hoping someone will
> take a look. Already have a feeling the answer is
> this.reportGroup.footerBand.TEXTRCALLS1
> will not give me the average of
> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1

Please take a look at the attached report. I'm not sure I have all the
details correct, but the basic functionality should be there. I also
left some of the debugging stuff, "?", so you'll need to clean it up a bit.


--
Michael Nuwer
http://www.ChelseaData.ca/dLearn/
http://www.nuwermj.potsdam.edu/dSamples/

--------------080303010800080806020507
Content-Type: text/plain;
name="RptStats4Emp.rep"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="RptStats4Emp.rep"

** END HEADER -- do not remove this line
//
// Generated on 12/29/2004
//
local r
r = new RPTSTATS4EMPREPORT()
r.render()

class RPTSTATS4EMPREPORT of REPORT
with (this)
render = class::FORM_RENDER
title = "RptStats4Emp"
metric = 3 // Inches
endwith

this.RPTSTATS4EMP1 = new QUERY()
this.RPTSTATS4EMP1.parent = this
with (this.RPTSTATS4EMP1)
left = -0.0097
top = -0.0104
sql = 'select * from "rptstats4emp.dbf" ORDER BY rDATE'
requestLive = false
active = true
endwith

with (this.printer)
duplex = 1 // None
orientation = 1 // Portrait
paperSource = 15
paperSize = 1
resolution = 4 // High
color = 1 // Monochrome
trueTypeFonts = 2 // Download
endwith

this.STREAMSOURCE1 = new STREAMSOURCE(this)
this.STREAMSOURCE1.GROUP1 = new GROUP(this.STREAMSOURCE1)
with (this.STREAMSOURCE1.GROUP1)
groupBy = "rWeek"
endwith

with (this.STREAMSOURCE1.GROUP1.headerBand)
height = 0.0
endwith

with (this.STREAMSOURCE1.GROUP1.footerBand)
height = 0.3535
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMESYS1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMESYS1)
height = 0.1667
left = 1.2187
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeSys"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXT1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXT1)
height = 0.2083
left = 0.0209
top = 0.0
width = 0.9584
prefixEnable = false
colorNormal = "b+"
text = {||"

" + this.parent.parent.parent.rowset.fields["rDATE"].value + "

"}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEOFF1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEOFF1)
height = 0.1667
left = 1.8639
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeOFF"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEROT1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEROT1)
height = 0.1667
left = 2.5201
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeROT"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEWRAP1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEWRAP1)
height = 0.1667
left = 3.1548
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeWRAP"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEIDLE1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEIDLE1)
height = 0.1667
left = 3.8215
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeIDLE"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMECALL1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMECALL1)
height = 0.1667
left = 4.4771
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeCALL"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEAVG1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEAVG1)
height = 0.1667
left = 5.1229
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2ms(this.parent.parent.agAVERAGE({||this.parent.rowset.fields["rTimeAVG"].value}))}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1)
height = 0.1667
left = 5.8
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "999,999"
text = {||this.parent.parent.agSum({||this.parent.rowset.fields["rCALLS"].value})}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRMSGS1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRMSGS1)
height = 0.1667
left = 6.4666
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "9.99%"
text = {||this.parent.parent.agAVERAGE({||this.parent.rowset.fields["rMSGS"].value})}
endwith

this.STREAMSOURCE1.GROUP1.footerBand.TEXTRAUTO1 = new TEXT(this.STREAMSOURCE1.GROUP1.footerBand)
with (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRAUTO1)
height = 0.1667
left = 7.143
top = 0.0
width = 0.5208
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "9.99%"
text = {||this.parent.parent.agAVERAGE({||this.parent.rowset.fields["rAUTO"].value})}
endwith

with (this.STREAMSOURCE1.detailBand)
height = 0.2313
endwith

this.STREAMSOURCE1.detailBand.TEXTRDATE1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRDATE1)
height = 0.1771
left = 0.0
top = 0.0
width = 0.7187
prefixEnable = false
text = {||this.form.RptStats4Emp1.rowset.fields["rDATE"].value}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMESYS1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMESYS1)
height = 0.1771
left = 1.1354
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeSys"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMEOFF1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMEOFF1)
height = 0.1771
left = 1.7812
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeOff"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMEROT1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMEROT1)
height = 0.1771
left = 2.4375
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeRot"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMEWRAP1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMEWRAP1)
height = 0.1771
left = 3.0729
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeWrap"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMEIDLE1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMEIDLE1)
height = 0.1771
left = 3.7396
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeIdle"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMECALL1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMECALL1)
height = 0.1771
left = 4.3958
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeCall"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRTIMEAVG1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRTIMEAVG1)
height = 0.1771
left = 5.0417
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
suppressIfBlank = true
text = {||num2ms(this.form.RptStats4Emp1.rowset.fields["rTimeAvg"].value)}
endwith

this.STREAMSOURCE1.detailBand.TEXTRCALLS1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRCALLS1)
height = 0.1771
left = 5.7187
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
picture = "999,999"
text = {||this.form.RptStats4Emp1.rowset.fields["rCalls"].value}
endwith

this.STREAMSOURCE1.detailBand.TEXTRMSGS1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRMSGS1)
height = 0.1771
left = 6.3854
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
picture = "9.99%"
text = {||this.form.RptStats4Emp1.rowset.fields["rMsgs"].value}
endwith

this.STREAMSOURCE1.detailBand.TEXTRAUTO1 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRAUTO1)
height = 0.1771
left = 7.0625
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
picture = "9.99%"
text = {||this.form.RptStats4Emp1.rowset.fields["rAuto"].value}
endwith

this.STREAMSOURCE1.detailBand.TEXTRDATE2 = new TEXT(this.STREAMSOURCE1.detailBand)
with (this.STREAMSOURCE1.detailBand.TEXTRDATE2)
height = 0.2083
left = 0.7604
top = 0.0
width = 0.3333
variableHeight = true
prefixEnable = false
text = {||substr(cdow(this.form.rptstats4emp1.rowset.fields["rdate"].value),1,3)}
endwith

this.PAGETEMPLATE1 = new PAGETEMPLATE(this)
with (this.PAGETEMPLATE1)
height = 11.0
width = 8.5
marginTop = 0.6562
marginLeft = 0.2396
marginBottom = 0.875
marginRight = 0.2604
gridLineWidth = 0
endwith

this.PAGETEMPLATE1.STREAMFRAME1 = new STREAMFRAME(this.PAGETEMPLATE1)
with (this.PAGETEMPLATE1.STREAMFRAME1)
height = 8.3751
left = 0.2188
top = 0.9791
width = 7.6875
form.STREAMFRAME1 = form.pagetemplate1.streamframe1
endwith

this.PAGETEMPLATE1.TEXT1 = new TEXT(this.PAGETEMPLATE1)
with (this.PAGETEMPLATE1.TEXT1)
height = 0.3646
left = 0.25
top = 0.25
width = 2.5938
prefixEnable = false
text = "

Weekly Stats for

"
form.TEXT1 = form.pagetemplate1.text1
endwith

this.PAGETEMPLATE1.TEXT2 = new TEXT(this.PAGETEMPLATE1)
with (this.PAGETEMPLATE1.TEXT2)
height = 0.1667
left = 5.6875
top = 0.3646
width = 2.1771
prefixEnable = false
text = {||Date()}
form.TEXT2 = form.pagetemplate1.text2
endwith

this.PAGETEMPLATE1.TEXTRNAME1 = new TEXT(this.PAGETEMPLATE1)
with (this.PAGETEMPLATE1.TEXTRNAME1)
height = 0.2083
left = 2.9375
top = 0.3542
width = 2.2708
variableHeight = true
prefixEnable = false
fontSize = 12.0
fontBold = true
text = {||this.form.RptStats4Emp1.rowset.fields["rname"].value}
form.TEXTRNAME1 = form.pagetemplate1.textrname1
endwith

with (this.reportGroup.headerBand)
height = 0.2264
endwith

this.reportGroup.headerBand.TITLETEXTRDATE1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRDATE1)
height = 0.1771
left = 0.0
top = 0.0
width = 0.7188
prefixEnable = false
text = "

Rdate

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMESYS1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMESYS1)
height = 0.1771
left = 1.1354
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

System

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMEOFF1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMEOFF1)
height = 0.1771
left = 1.7812
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Out

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMEROT1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMEROT1)
height = 0.1771
left = 2.4375
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Rot

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMEWRAP1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMEWRAP1)
height = 0.1771
left = 3.0729
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Wrap

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMEIDLE1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMEIDLE1)
height = 0.1771
left = 3.7396
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Idle

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMECALL1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMECALL1)
height = 0.1771
left = 4.3958
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Talk

"
endwith

this.reportGroup.headerBand.TITLETEXTRTIMEAVG1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRTIMEAVG1)
height = 0.1771
left = 5.0417
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Avg

"
endwith

this.reportGroup.headerBand.TITLETEXTRCALLS1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRCALLS1)
height = 0.1771
left = 5.7188
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Calls

"
endwith

this.reportGroup.headerBand.TITLETEXTRMSGS1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRMSGS1)
height = 0.1771
left = 6.3854
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

Msgs

"
endwith

this.reportGroup.headerBand.TITLETEXTRAUTO1 = new TEXT(this.reportGroup.headerBand)
with (this.reportGroup.headerBand.TITLETEXTRAUTO1)
height = 0.1771
left = 7.0625
top = 0.0
width = 0.6
prefixEnable = false
alignHorizontal = 2 // Right
text = "

NoAuto

"
endwith

with (this.reportGroup.footerBand)
height = 0.6951
endwith

this.reportGroup.footerBand.TEXTRTIMESYS1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMESYS1)
height = 0.1667
left = 1.1354
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeSys"].value}))}
endwith

this.reportGroup.footerBand.TEXTRTIMEOFF1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMEOFF1)
height = 0.1667
left = 1.7812
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeOff"].value}))}
endwith

this.reportGroup.footerBand.TEXTRTIMEROT1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMEROT1)
height = 0.1667
left = 2.4375
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeRot"].value}))}
endwith

this.reportGroup.footerBand.TEXTRTIMEWRAP1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMEWRAP1)
height = 0.1667
left = 3.0729
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeWrap"].value}))}
endwith

this.reportGroup.footerBand.TEXTRTIMEIDLE1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMEIDLE1)
height = 0.1667
left = 3.7396
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeIdle"].value}))}
endwith

this.reportGroup.footerBand.TEXTRTIMECALL1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMECALL1)
height = 0.1667
left = 4.3958
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeCall"].value}))}
endwith

this.reportGroup.footerBand.TEXTRTIMEAVG1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRTIMEAVG1)
height = 0.1667
left = 5.0416
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
text = {||num2ms(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rTimeAvg"].value}))}
endwith

this.reportGroup.footerBand.TEXTRCALLS1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRCALLS1)
height = 0.1667
left = 5.7188
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "999,999"
text = {||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rCalls"].value})}
endwith

this.reportGroup.footerBand.TEXTRMSGS1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRMSGS1)
height = 0.1667
left = 6.3854
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "9.99%"
text = {||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rMsgs"].value})}
endwith

this.reportGroup.footerBand.TEXTRAUTO1 = new TEXT(this.reportGroup.footerBand)
with (this.reportGroup.footerBand.TEXTRAUTO1)
height = 0.1667
left = 7.0625
top = 0.0938
width = 0.6
variableHeight = true
prefixEnable = false
colorNormal = "b+"
alignHorizontal = 2 // Right
picture = "9.99%"
text = {||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rAuto"].value})}
endwith

this.firstPageTemplate = this.form.pagetemplate1
this.form.pagetemplate1.nextPageTemplate = this.form.pagetemplate1
this.form.pagetemplate1.streamframe1.streamSource = this.form.streamsource1
this.form.streamsource1.rowset = this.form.rptstats4emp1.rowset

function form_render
if type( "this.runOnce" ) # "L"
this.runOnce = true
if type( "this.reportViewer" ) == "O"
// we are being called from a reportViewer
// check to see if the reportViewer's form has
// a params array:
if type( "this.reportViewer.form.params" ) == "O"
// set params array:
this.params = this.reportViewer.form.params
// set the main title
this.PAGETEMPLATE1.TEXT2.text := this.params["Title"]
endif
endif

if type( "this.params" ) == "O" and this.params.isKey( "Details" )
this.STREAMSOURCE1.detailBand.visible := this.params[ "Details" ]
endif
endif // this.runOnce
return super::render()

endclass

function Num2HM( i )
// converts number to hhh:mm:ss
local h, m, s
h = int( i / 3600 )
m = int((i - h * 3600) / 60)
s = i - m * 60 - h * 3600
return str(h, 3, 0, ' ') + ':' + str(m, 2, 0, '0')

function Num2MS( i )
// converts number to hhh:mm:ss
local h, m, s
h = int( i / 3600 )
m = int((i - h * 3600) / 60)
s = i - m * 60 - h * 3600
return str(m, 2, 0, '0') + ':' + str(s, 2, 0, '0')

--------------080303010800080806020507--
From:Geoff Wass
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 16:20:36 -0500
Michael Nuwer [dBVIPS] wrote:
>> Larry Kinder wrote:
>>> Geoff,
>>>
>>> Thanks for your reply, I posted a demo in the binaries, hoping
>>> someone will take a look. Already have a feeling the answer is
>>> this.reportGroup.footerBand.TEXTRCALLS1
>>> will not give me the average of
>>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1
>>
>> Please take a look at the attached report. I'm not sure I have all
>> the
>> details correct, but the basic functionality should be there. I also
>> left some of the debugging stuff, "?", so you'll need to clean it up
>> a bit.
>>
>>
>> --
>> Michael Nuwer
>> http://www.ChelseaData.ca/dLearn/
>> http://www.nuwermj.potsdam.edu/dSamples/
>>
>
>
>
>> ** END HEADER -- do not remove this line
>> //
>> // Generated on 12/29/2004
>> //
>> local r
>> r = new RPTSTATS4EMPREPORT()
>> r.render()
>>
>> class RPTSTATS4EMPREPORT of REPORT
>> with (this)
>> render = class::FORM_RENDER
>> title = "RptStats4Emp"
>> metric = 3 // Inches
>> endwith
>>
>> this.RPTSTATS4EMP1 = new QUERY()
>> this.RPTSTATS4EMP1.parent = this
>> with (this.RPTSTATS4EMP1)
>> left = -0.0097
>> top = -0.0104
>> sql = 'select * from "rptstats4emp.dbf" ORDER BY rDATE'
>> requestLive = false
>> active = true
>> endwith
>>
>> with (this.printer)
>> duplex = 1 // None
>> orientation = 1 // Portrait
>> paperSource = 15
>> paperSize = 1
>> resolution = 4 // High
>> color = 1 // Monochrome
>> trueTypeFonts = 2 // Download
>> endwith
>>
>> this.STREAMSOURCE1 = new STREAMSOURCE(this)
>> this.STREAMSOURCE1.GROUP1 = new GROUP(this.STREAMSOURCE1)
>> with (this.STREAMSOURCE1.GROUP1)
>> groupBy = "rWeek"
>> endwith
>>
>> with (this.STREAMSOURCE1.GROUP1.headerBand)
>> height = 0.0
>> endwith
>>
>> with (this.STREAMSOURCE1.GROUP1.footerBand)
>> height = 0.3535
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMESYS1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMESYS1) height =
>> 0.1667 left = 1.2187
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeSys"].
value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXT1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXT1) height = 0.2083
>> left = 0.0209
>> top = 0.0
>> width = 0.9584
>> prefixEnable = false
>> colorNormal = "b+"
>> text = {||"

" +
>> this.parent.parent.parent.rowset.fields["rDATE"].value + "

"}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEOFF1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEOFF1) height =
>> 0.1667 left = 1.8639
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeOFF"].
value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEROT1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEROT1) height =
>> 0.1667 left = 2.5201
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeROT"].
value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEWRAP1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEWRAP1) height =
>> 0.1667 left = 3.1548
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeWRAP"]
..value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEIDLE1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEIDLE1) height =
>> 0.1667 left = 3.8215
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeIDLE"]
..value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMECALL1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMECALL1) height =
>> 0.1667 left = 4.4771
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agSum({||this.parent.rowset.fields["rTimeCALL"]
..value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEAVG1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRTIMEAVG1) height =
>> 0.1667 left = 5.1229
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2ms(this.parent.parent.agAVERAGE({||this.parent.rowset.fields["rTimeAV
G"].value}))}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1) height =
>> 0.1667 left = 5.8
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> picture = "999,999"
>> text =
>>
>>
{||this.parent.parent.agSum({||this.parent.rowset.fields["rCALLS"].value})}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRMSGS1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRMSGS1) height =
>> 0.1667 left = 6.4666
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> picture = "9.99%"
>> text =
>>
>>
{||this.parent.parent.agAVERAGE({||this.parent.rowset.fields["rMSGS"].value}
)}
>> endwith
>>
>> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRAUTO1 = new
>> TEXT(this.STREAMSOURCE1.GROUP1.footerBand) with
>> (this.STREAMSOURCE1.GROUP1.footerBand.TEXTRAUTO1) height =
>> 0.1667 left = 7.143
>> top = 0.0
>> width = 0.5208
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> picture = "9.99%"
>> text =
>>
>>
{||this.parent.parent.agAVERAGE({||this.parent.rowset.fields["rAUTO"].value}
)}
>> endwith
>>
>> with (this.STREAMSOURCE1.detailBand)
>> height = 0.2313
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRDATE1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRDATE1) height = 0.1771
>> left = 0.0
>> top = 0.0
>> width = 0.7187
>> prefixEnable = false
>> text = {||this.form.RptStats4Emp1.rowset.fields["rDATE"].value}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMESYS1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMESYS1) height = 0.1771
>> left = 1.1354
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text =
>>
>> {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeSys"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMEOFF1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMEOFF1) height = 0.1771
>> left = 1.7812
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text =
>>
>> {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeOff"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMEROT1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMEROT1) height = 0.1771
>> left = 2.4375
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text =
>>
>> {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeRot"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMEWRAP1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMEWRAP1) height = 0.1771
>> left = 3.0729
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text =
>>
>> {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeWrap"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMEIDLE1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMEIDLE1) height = 0.1771
>> left = 3.7396
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text =
>>
>> {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeIdle"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMECALL1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMECALL1) height = 0.1771
>> left = 4.3958
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text =
>>
>> {||num2hm(this.form.RptStats4Emp1.rowset.fields["rTimeCall"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRTIMEAVG1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRTIMEAVG1) height = 0.1771
>> left = 5.0417
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> suppressIfBlank = true
>> text =
>>
>> {||num2ms(this.form.RptStats4Emp1.rowset.fields["rTimeAvg"].value)}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRCALLS1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRCALLS1) height = 0.1771
>> left = 5.7187
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> picture = "999,999"
>> text =
>> {||this.form.RptStats4Emp1.rowset.fields["rCalls"].value} endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRMSGS1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRMSGS1) height = 0.1771
>> left = 6.3854
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> picture = "9.99%"
>> text = {||this.form.RptStats4Emp1.rowset.fields["rMsgs"].value}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRAUTO1 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRAUTO1) height = 0.1771
>> left = 7.0625
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> picture = "9.99%"
>> text = {||this.form.RptStats4Emp1.rowset.fields["rAuto"].value}
>> endwith
>>
>> this.STREAMSOURCE1.detailBand.TEXTRDATE2 = new
>> TEXT(this.STREAMSOURCE1.detailBand) with
>> (this.STREAMSOURCE1.detailBand.TEXTRDATE2) height = 0.2083
>> left = 0.7604
>> top = 0.0
>> width = 0.3333
>> variableHeight = true
>> prefixEnable = false
>> text =
>>
>>
{||substr(cdow(this.form.rptstats4emp1.rowset.fields["rdate"].value),1,3)}
>> endwith
>>
>> this.PAGETEMPLATE1 = new PAGETEMPLATE(this)
>> with (this.PAGETEMPLATE1)
>> height = 11.0
>> width = 8.5
>> marginTop = 0.6562
>> marginLeft = 0.2396
>> marginBottom = 0.875
>> marginRight = 0.2604
>> gridLineWidth = 0
>> endwith
>>
>> this.PAGETEMPLATE1.STREAMFRAME1 = new
>> STREAMFRAME(this.PAGETEMPLATE1) with
>> (this.PAGETEMPLATE1.STREAMFRAME1) height = 8.3751
>> left = 0.2188
>> top = 0.9791
>> width = 7.6875
>> form.STREAMFRAME1 = form.pagetemplate1.streamframe1
>> endwith
>>
>> this.PAGETEMPLATE1.TEXT1 = new TEXT(this.PAGETEMPLATE1)
>> with (this.PAGETEMPLATE1.TEXT1)
>> height = 0.3646
>> left = 0.25
>> top = 0.25
>> width = 2.5938
>> prefixEnable = false
>> text = "

Weekly Stats for

"
>> form.TEXT1 = form.pagetemplate1.text1
>> endwith
>>
>> this.PAGETEMPLATE1.TEXT2 = new TEXT(this.PAGETEMPLATE1)
>> with (this.PAGETEMPLATE1.TEXT2)
>> height = 0.1667
>> left = 5.6875
>> top = 0.3646
>> width = 2.1771
>> prefixEnable = false
>> text = {||Date()}
>> form.TEXT2 = form.pagetemplate1.text2
>> endwith
>>
>> this.PAGETEMPLATE1.TEXTRNAME1 = new TEXT(this.PAGETEMPLATE1)
>> with (this.PAGETEMPLATE1.TEXTRNAME1)
>> height = 0.2083
>> left = 2.9375
>> top = 0.3542
>> width = 2.2708
>> variableHeight = true
>> prefixEnable = false
>> fontSize = 12.0
>> fontBold = true
>> text = {||this.form.RptStats4Emp1.rowset.fields["rname"].value}
>> form.TEXTRNAME1 = form.pagetemplate1.textrname1
>> endwith
>>
>> with (this.reportGroup.headerBand)
>> height = 0.2264
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRDATE1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRDATE1) height = 0.1771
>> left = 0.0
>> top = 0.0
>> width = 0.7188
>> prefixEnable = false
>> text = "

Rdate

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMESYS1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMESYS1) height =
>> 0.1771 left = 1.1354
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

System

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMEOFF1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMEOFF1) height =
>> 0.1771 left = 1.7812
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Out

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMEROT1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMEROT1) height =
>> 0.1771 left = 2.4375
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Rot

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMEWRAP1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMEWRAP1) height =
>> 0.1771 left = 3.0729
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Wrap

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMEIDLE1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMEIDLE1) height =
>> 0.1771 left = 3.7396
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Idle

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMECALL1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMECALL1) height =
>> 0.1771 left = 4.3958
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Talk

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRTIMEAVG1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRTIMEAVG1) height =
>> 0.1771 left = 5.0417
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Avg

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRCALLS1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRCALLS1) height = 0.1771
>> left = 5.7188
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Calls

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRMSGS1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRMSGS1) height = 0.1771
>> left = 6.3854
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

Msgs

"
>> endwith
>>
>> this.reportGroup.headerBand.TITLETEXTRAUTO1 = new
>> TEXT(this.reportGroup.headerBand) with
>> (this.reportGroup.headerBand.TITLETEXTRAUTO1) height = 0.1771
>> left = 7.0625
>> top = 0.0
>> width = 0.6
>> prefixEnable = false
>> alignHorizontal = 2 // Right
>> text = "

NoAuto

"
>> endwith
>>
>> with (this.reportGroup.footerBand)
>> height = 0.6951
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMESYS1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMESYS1) height = 0.1667
>> left = 1.1354
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeSys"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMEOFF1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMEOFF1) height = 0.1667
>> left = 1.7812
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeOff"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMEROT1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMEROT1) height = 0.1667
>> left = 2.4375
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeRot"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMEWRAP1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMEWRAP1) height = 0.1667
>> left = 3.0729
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeWrap"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMEIDLE1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMEIDLE1) height = 0.1667
>> left = 3.7396
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeIdle"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMECALL1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMECALL1) height = 0.1667
>> left = 4.3958
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2hm(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeCall"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRTIMEAVG1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRTIMEAVG1) height = 0.1667
>> left = 5.0416
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> text =
>>
>>
{||num2ms(this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.f
ields["rTimeAvg"].value}))}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRCALLS1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRCALLS1) height = 0.1667
>> left = 5.7188
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> picture = "999,999"
>> text =
>>
>>
{||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["
rCalls"].value})}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRMSGS1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRMSGS1) height = 0.1667
>> left = 6.3854
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> picture = "9.99%"
>> text =
>>
>>
{||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["
rMsgs"].value})}
>> endwith
>>
>> this.reportGroup.footerBand.TEXTRAUTO1 = new
>> TEXT(this.reportGroup.footerBand) with
>> (this.reportGroup.footerBand.TEXTRAUTO1) height = 0.1667
>> left = 7.0625
>> top = 0.0938
>> width = 0.6
>> variableHeight = true
>> prefixEnable = false
>> colorNormal = "b+"
>> alignHorizontal = 2 // Right
>> picture = "9.99%"
>> text =
>>
>>
{||this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["
rAuto"].value})}
>> endwith
>>
>> this.firstPageTemplate = this.form.pagetemplate1
>> this.form.pagetemplate1.nextPageTemplate = this.form.pagetemplate1
>> this.form.pagetemplate1.streamframe1.streamSource =
>> this.form.streamsource1 this.form.streamsource1.rowset =
>> this.form.rptstats4emp1.rowset
>>
>> function form_render
>> if type( "this.runOnce" ) # "L"
>> this.runOnce = true
>> if type( "this.reportViewer" ) == "O"
>> // we are being called from a reportViewer
>> // check to see if the reportViewer's form has
>> // a params array:
>> if type( "this.reportViewer.form.params" ) == "O"
>> // set params array:
>> this.params = this.reportViewer.form.params
>> // set the main title
>> this.PAGETEMPLATE1.TEXT2.text := this.params["Title"]
>> endif
>> endif
>>
>> if type( "this.params" ) == "O" and this.params.isKey(
>> "Details" ) this.STREAMSOURCE1.detailBand.visible :=
>> this.params[ "Details" ] endif
>> endif // this.runOnce
>> return super::render()
>>
>> endclass
>>
>> function Num2HM( i )
>> // converts number to hhh:mm:ss
>> local h, m, s
>> h = int( i / 3600 )
>> m = int((i - h * 3600) / 60)
>> s = i - m * 60 - h * 3600
>> return str(h, 3, 0, ' ') + ':' + str(m, 2, 0, '0')
>>
>> function Num2MS( i )
>> // converts number to hhh:mm:ss
>> local h, m, s
>> h = int( i / 3600 )
>> m = int((i - h * 3600) / 60)
>> s = i - m * 60 - h * 3600
>> return str(m, 2, 0, '0') + ':' + str(s, 2, 0, '0')

Michael,

Hmmm... attachment you say? In the spirit of Christmas and the New Year (by
the way, have a good one), we'll let you off this time, but...


Now folks, please warn your children to post attachments in the
dbase.binaries news group.


--

:-)


----------
Geoff Wass (dBVIPS)
Montréal, Québec, Canada


==========
=======
====
=
More dBASE information at http://geocities.com/geoff_wass

Please reply in the news groups only.
Have you backed up your work?!
=
====
=======
==========
From:Todd Kreuter [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 16:23:32 -0500
Geoff Wass wrote:
>
> Now folks, please warn your children to post attachments in the
> dbase.binaries news group.

And please, please don't forget to tell your children to trim thier
messages


--
Todd Kreuter [dBVIPS]
From:Geoff Wass
Subject:Re: average of all Group1
Date:Sun, 2 Jan 2005 21:47:05 -0500
Todd Kreuter [dBVIPS] wrote:
> Geoff Wass wrote:
>>
>> Now folks, please warn your children to post attachments in the
>> dbase.binaries news group.
>
> And please, please don't forget to tell your children to trim thier
> messages



Todd,

LOL! This OE-QuoteFix I'm using automatically scrolls to the end of a
message when making a reply, so I did not see how much I was quoting. So
sorry!


--

:-)


----------
Geoff Wass (dBVIPS)
Montréal, Québec, Canada


==========
=======
====
=
More dBASE information at http://geocities.com/geoff_wass

Please reply in the news groups only.
Have you backed up your work?!
=
====
=======
==========
From:Todd Kreuter [dBVIPS]
Subject:Re: average of all Group1
Date:Sun, 2 Jan 2005 22:37:48 -0500
"Geoff Wass" wrote in message
news:s2HDS9T8EHA.1088@news-server...
>
> LOL! This OE-QuoteFix I'm using automatically scrolls to the end of a
> message when making a reply, so I did not see how much I was quoting. So
> sorry!

I see. If Master where watching, he would tell you to lose QuoteFix.

I guess we can let it slide this one time.

Todd Kreuter [dBVIPS]
From:Geoff Wass
Subject:Re: average of all Group1
Date:Mon, 3 Jan 2005 12:00:23 -0500
Todd Kreuter [dBVIPS] wrote:
> "Geoff Wass" wrote in message
> news:s2HDS9T8EHA.1088@news-server...
>>
>> LOL! This OE-QuoteFix I'm using automatically scrolls to the end of a
>> message when making a reply, so I did not see how much I was
>> quoting. So sorry!
>
> I see. If Master where watching, he would tell you to lose QuoteFix.
>
>
> I guess we can let it slide this one time.
>
> Todd Kreuter [dBVIPS]


Todd,

He would probably tell me a few other things, too! Luckily, he has not
noticed.

Thank-you for letting this slide. I won't forget your generosity. ;-)


--

:-)


----------
Geoff Wass (dBVIPS)
Montréal, Québec, Canada


==========
=======
====
=
More dBASE information at http://geocities.com/geoff_wass

Please reply in the news groups only.
Have you backed up your work?!
=
====
=======
==========
From:Todd Kreuter [dBVIPS]
Subject:Re: average of all Group1
Date:Mon, 03 Jan 2005 12:03:29 -0500
Geoff Wass wrote:
>
> He would probably tell me a few other things, too! Luckily, he has not
> noticed.

No doubt

--
Todd Kreuter [dBVIPS]
From:Michael Nuwer [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 17:02:40 -0500
Geoff Wass wrote:

>
> Michael,
>
> Hmmm... attachment you say? In the spirit of Christmas and the New Year (by
> the way, have a good one), we'll let you off this time, but...

Thank you ;-), and I hope that one day the holiday spirit will survive
all year.

>
>
> Now folks, please warn your children to post attachments in the
> dbase.binaries news group.

Even when the attachment is plain text? I recall that Bowen permitted
plain text attachments. Code for reports do not cut and paste into a
message body all that well.



--
Michael Nuwer
http://www.ChelseaData.ca/dLearn/
http://www.nuwermj.potsdam.edu/dSamples/
From:Todd Kreuter [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 17:11:11 -0500
"Michael Nuwer [dBVIPS]" wrote:
>
> Even when the attachment is plain text? I recall that Bowen permitted
> plain text attachments. Code for reports do not cut and paste into a
> message body all that well.

We were told no attachments, including pain text attachements.

--
Todd Kreuter [dBVIPS]
From:Michael Nuwer [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 17:19:25 -0500
Todd Kreuter [dBVIPS] wrote:

>
> We were told no attachments, including pain text attachements.

Ah, apparently I missed that meeting .

--
Michael Nuwer
http://www.ChelseaData.ca/dLearn/
http://www.nuwermj.potsdam.edu/dSamples/
From:Todd Kreuter [dBVIPS]
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 17:32:25 -0500
"Michael Nuwer [dBVIPS]" wrote:
>
> Ah, apparently I missed that meeting .


Yes, it was before you enlisted

--
Todd Kreuter [dBVIPS]
From:Larry Kinder
Subject:Re: average of all Group1
Date:Sat, 1 Jan 2005 00:49:59 -0600
Thank you once again. I can do a lot with that info. That is slick how you
stored and added it to the header band then used it when needed in the
footer band.

Larry Kinder


"Michael Nuwer [dBVIPS]" wrote in message
news:t$EvZwr7EHA.736@news-server...
From:Michael Nuwer [dBVIPS]
Subject:Re: average of all Group1
Date:Sat, 01 Jan 2005 11:44:17 -0500
Larry Kinder wrote:
> Thank you once again.

You're welcome, Larry.

--
Michael Nuwer
http://www.ChelseaData.ca/dLearn/
http://www.nuwermj.potsdam.edu/dSamples/
From:Geoff Wass
Subject:Re: average of all Group1
Date:Sun, 2 Jan 2005 21:51:21 -0500
Michael Nuwer [dBVIPS] wrote:
> Geoff Wass wrote:
>
>>
>> Michael,
>>
>> Hmmm... attachment you say? In the spirit of Christmas and the New
>> Year (by the way, have a good one), we'll let you off this time,
>> but...
>
> Thank you ;-), and I hope that one day the holiday spirit will survive
> all year.

Now, there's an effective cure for a hangover! Just never have one!! Great
idea, Michael!



>> Now folks, please warn your children to post attachments in the
>> dbase.binaries news group.
>
> Even when the attachment is plain text? I recall that Bowen permitted
> plain text attachments. Code for reports do not cut and paste into a
> message body all that well.

Bowen? Who's Bowen?

I do agree they don't cut & paste well. They do zip well, though. ;-)


--

:-)


----------
Geoff Wass (dBVIPS)
Montréal, Québec, Canada


==========
=======
====
=
More dBASE information at http://geocities.com/geoff_wass

Please reply in the news groups only.
Have you backed up your work?!
=
====
=======
==========
From:Geoff Wass
Subject:Re: average of all Group1
Date:Thu, 30 Dec 2004 13:15:06 -0500
Larry Kinder wrote:
> Geoff,
>
> Thanks for your reply, I posted a demo in the binaries, hoping
> someone will take a look. Already have a feeling the answer is
> this.reportGroup.footerBand.TEXTRCALLS1
> will not give me the average of
> this.STREAMSOURCE1.GROUP1.footerBand.TEXTRCALLS1
>
> Thanks
> Larry Kinder
>
> "Geoff Wass" wrote in message
> news:FqXMzSd7EHA.1844@news-server...
>> Are you wanting to take the sum of each group and calculate a single
>> average
>> or are you wanting to calculate the average for each group and then
>> calculate another average of the averages? The former is equivalent
>> to the average which you are already getting (an average of all the
>> details) and the latter is generally not useful unless all groups
>> are of equal size (in which case, such an average of averages is the
>> same as an average of all the
>> details).
>>
>> If you want to do it, I think you could use the .canRender() event
>> and a custom property or two to track the average of each group.

Larry,

Since you have the daily average, the weekly average should just be 7 times
the daily average:

text = {|| 7 *
this.parent.parent.agAverage({||this.parent.STREAMSOURCE1.rowset.fields["rAu
to"].value})}


--

:-)


----------
Geoff Wass (dBVIPS)
Montréal, Québec, Canada


==========
=======
====
=
More dBASE information at http://geocities.com/geoff_wass

Please reply in the news groups only.
Have you backed up your work?!
=
====
=======
==========
   

Copyright © 2006 newsgroups-index   -   All rights reserved   -   Impressum