更新:可能它是一個不同的問題?
我很確定我採取了正確的步驟,但如果這是一個不同的問題呢?Crystal Reports 2008 - 重置共享變量時遇到問題
我有多個參數,它好像可能正在重置,但是子報表可能會跨所有參數進行計算,所以即使重置,它也會重新計算所有多個工單號。已經在我的工單號碼參數中指定。
背景
我有一個水晶報表2008年的報告與分享他們的總價值重新就業,爲操作主報表中的幾個子報告。
子報告適用於單個記錄,但在選擇多個記錄時不會重置,導致它們顯示所有記錄中的總數。
這是已知解決方案的問題,但是當我試圖將其應用於我的報告時,它似乎沒有按預期工作。
我很確定這是一個問題,無論是與公式的語法或與我放置他們的地方的佈局。
已知步驟
問題是Crystal子報表沒有專門重置;這是設計。
要強制報表重置,您必須在運行子報表之前在記錄級別組(即不報表標題)中插入公式,以便將共享變量設回零。共享變量復位式
的報告
- 報表頭(抑制)
- 頁眉(基本頁信息)
- 組頭1A佈局組標題1b - 工作訂單信息
- 詳細 - 子報表勞動力的估計和子報表物料估計
- 組尾1A - 公式兩個子報表
- 組尾顯示總1B - 工作單的長描述(無分報告)
- 報表頁腳(抑制)
- 頁腳(基本頁面信息)
勞動報表共用變量生成式(放置在子報表頁腳):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts := Sum ({R_PFWR_ESTS_LABBYCODE.TOTALLABORCOSTS});
在主報告共享變量式(放置在主報告,頁腳1A):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts
共享變量重置公式(放置在主報告,組標題1a中):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts:=0;
任何人都可以看到我要去哪裏錯了嗎?謝謝!
不知道我是否正確理解。當我運行一個參數值時,我的計算是正確的。當我用一個參數的多個參數值運行它時,子報表就不會將其自身重置爲零,因爲下一個項目顯示時,我得到的是所有顯示報表的總和,而不僅僅是該報表。看來這是我見過的解決方案的一個常見問題。你能否解釋一下這種方法與SQL表達式有何不同?謝謝! – SeanKilleen 2011-12-15 11:17:58