2012-08-03 152 views
2

我有一個相當簡單的問題,即使在網上搜索了很多小時,我仍然沒有爲自己設計鍛鍊。Crystal Reports XI - 基於子組抑制狀態抑制組標題

我有一個包含來自幾千個設備(記錄器)的時間戳數據的報告,以合理的方式呈現數據,我在報告中設置了兩個組;記錄器和時間戳,以便首先通過記錄器ID,然後由時間戳分組的數據,其工作正常

Group 1 Logger 1 
    Group 2 Timestamp 01/08/2012 
    Data... 
    Data... 
    Data... 
    Group 2 Timestamp 02/08/2012 
    Data... 
    Data... 
Group 1 Logger 2 
    Group 2 Timestamp 01/08/2012 
    Data... 
    Data... 
    Data... 

現在數據(詳細)的字段是從用戶隱藏,並且我只要顯示的報頭組-2-如果每個組中有4個或更多記錄-2。爲了實現這一點我已經使用以下抑制式上基團的2

Count ({GMAC_spDg2Report;1.tTimeStamp}, {GMAC_spDg2Report;1.tTimeStamp}, "daily") < 4 

訣竅是,存在其中所有基團的2頭被抑制,並且如果是這種情況下,我想隱藏某些級別1基團組1標題也是如此。 在組1中使用與組-2相同的抑制公式不會產生所需的結果。我還試圖使用在組1頁腳的運行總數(稱爲{#COUNT Unsupressed天})與不同的計數和對每個組-1

Count ({GMAC_spDg2Report;1.strLogger}, {GMAC_spDg2Report;1.tTimeStamp}, "daily") > 4 

運行總計作品被複位下面的公式完美地,如果該組具有未被抑制的子組,則返回1組中的1;如果所有組2的頭被抑制,則返回0。

所以這裏是挑戰,我似乎無法應用抑制規則在組1的頭使用運行總輸出。 爲了演示這個問題,我創建了一個公式字段,其中只包含來自運行總數的輸出並將其放置在group-1標題中。 結果令人困惑的是,公式字段沒有顯示與運行總數相同的值,因此抑制規則不起作用。

我希望這是某種感覺......我覺得我已經試過各種

+0

+1非常好的問題。問題在於,運行總計必須在計數記錄之後或之後使用,因爲CR的評估方式通過了。通過讓您的數據試圖在組頁眉中隱藏,您可以使用哪些功能(沒有打印時間公式,沒有運行總計,但基本彙總功能應該可以),這是有限的。 – Ryan 2012-08-03 19:18:34

回答

1

我沒有一個明確的解決方案,但使用開始

WhilePrintingRecords; 
... 

的公式字段公式將在之後處理所有記錄都被讀取,因此您將能夠在節標題中使用它並獲得正確的結果。
現在有一個問題找到一個公式邏輯,將爲你使用,但也許這第一步可以幫助你在正確的方向。

0

我曾經有過類似的問題。我記得,訣竅是在每個細節部分檢查Suppress blank section並在組頭部分檢查一些類似的探測選項Suppress blank group(?)。

對不起,我不能給你確切的名字,這是很久以前,我用德語版本。不過,我知道這可能沒有公式。

我認爲你不使用子報告。如果你這樣做,請注意,只有當子報告選項Suppress empty report(?)與我上面寫的一起檢查時,該技巧纔有效。