2017-09-26 138 views
0

第一個問題在這裏。Crystal報告公式獲得平均最小和最大跑步總數

我的問題是如何獲得運行總最小值和運行總最大值的平均值?我想我需要使用公式而不是總計,但我不知道那個公式是什麼。

我正在寫一篇水晶報告,隨着時間的推移發生一件事。每個月按一個月分組的次數發生了多少次。此外,需要多長時間才能發生?平均時間,最短時間,最長時間。

Year  | Month | How Many | Average? (days) | Minimum Time | Maximum Time 

2017 

January | 15  | 5  | 2   | 16   
February | 7  | 4  | 1   | 10  
March | 20  | 6  | 4   | 12  
Average | 14  | 5  | 2.33  | 12.66 

我在月份組中使用運行總數來獲取每個月的平均值,最小值和最大值。

但是,當我達到所有組的平均值時,我想要所有最小值的平均值和最大值的平均值。我不希望年份中的最小值爲1,我可以使用總計。我想要2.33。水晶不會讓我達到總運行總數的平均值。

我希望這是有道理的。在此先感謝您的幫助。

回答

0

我會使用公式字段來創建一個變量來累積值,然後第二個公式字段來計算它累計值的次數。然後你通過櫃檯累計總數來得到你的平均值。

的蓄電池將是公式...

WhilePrintingRecords; 
Shared Numbervar MinsAccumulator := MinsAccumulator + {#Minimum_Time}; 

的計數器將是公式...

WhilePrintingRecords; 
Shared Numbervar counter = counter + 1; 

請記住不過,如果您使用此節內部是重複的,那麼你還需要一個公式字段來將你的變量的值重置爲零。這應該是這樣的......

WhilePrintingREcords; 
Shared Numbervar counter = 0; 

每個公式字段只需拖放到您希望他們能夠評估,然後抑制領域,使他們不顯示的部分。然後,您可以創建其他公式字段來顯示要在報告中使用的變量的值。這裏是顯示變量的公式。

Shared Numbervar counter; 
counter; 

如果您不熟悉使用水晶報表變量不僅僅是應對回來,我可以更詳細地解釋。起初他們可能有點棘手。

+0

非常感謝!我會盡力明天通過這個。我可能會接受你提出的更多問題,但我想先吸收你所說的話。 – Christian

+0

這就像一個魅力! 爲Crystal Reports 11聲明一個小小的變量是: 'Shared NumberVar' 而不是 'NumberVar Shared' 非常感謝! – Christian

+0

Christian - 感謝您指出變量聲明中關鍵字順序的語法差異。我完全從內存中編寫了這些代碼塊,並沒有在我的語法中發現這個錯誤。我編輯了答案,以便任何來到這裏尋求幫助的人都能得到正確的語法。 –

相關問題