2013-10-24 90 views
1

運行總,我認爲一個陣列可以解決「按項目」彙總字段的問題...水晶報表 - 在陣列

源數據:

「事件1」

「事件2 「

‘事件3’

這些多個實例出現不同的區域(第1小組),和不同的時間(第2組),所以在任何一天,我報出:

天1

「事件1」 - 2個OCCURENCES

「事件3」 - 3個OCCURENCES

第2天

「事件1」 - 5個OCCURENCES

「事件3「 - 7次發生

總計足夠簡單,隨時記錄,但現在我想在報告結尾包含每個特定事件類型的總計。想一想,如果我創建一個數組來計算每次事件記錄的點擊次數,就可以在報告結束時以累計的方式將它們排出。

與關鍵EventArray「事件1」增量每一次記錄是「事件1」 EventArray與關鍵「事件2」增量每次記錄是這樣的「事件2」

等等...

只是不確定放在哪裏;如何編寫...必須的下面的一些變化,但只是不太確定:

//Build 
WhileReadingRecords; 
Local StringVar Key := "" & {Customer.EventType}; 
Local NumberVar Amt := "Count of Event Types"; 
StringVar array Keys; 
NumberVar Array Amts; 
if not(Key in Keys) then 
(redim preserve Keys [count(Keys)+1]; 
redim preserve Amts[count(Keys)+1]; 
Keys[count(Keys)]:= Key; 
Amts[count(Keys)]:= Amt); 
Amts [1] 

在類似的perl它很容易做的一個哈希,但不知道如何/在哪裏做在水晶。

最後,我猜數組看起來像:

arrayName中的[「事件1」] = 17或然而,許多次記錄在該領域Customer.EventType有「事件1」

arrayName中的[「事件2」] = 18或然而,許多次記錄在該領域Customer.EventType

我不知道有「事件2」 ...

+0

哪個Crystel的版本?對於VS或實際的Crystal Reports,它是水晶嗎? –

+0

實際的Crystal Reports套件。 – user2917111

回答

0

您可以通過只是做一個非常簡單的解決方案爲每個事件創建單獨的公式,例如if Customer.EventType = Event1 then 1 else 0。把它們放在適當的部分並壓制。然後在相應部分中添加摘要並對每個公式進行總計。如果你有數百個事件,這當然會是太多的工作。那麼陣列將是更好的方法。讓我知道如果你需要做陣列,我會很樂意幫助你。

乾杯,

克里斯