2012-03-09 106 views
3

美好的一天所有人。水晶報表 - 當子報表存在時在主報表中抑制標題

我運行水晶報表9

我有一個報告,列出了一系列的記錄,然後只含有圖的子報告。 我想抑制主報告的頁眉,顯示子報告(圖)的頁面。

我似乎無法想象出一個公式來測試圖形/子報告的存在以抑制主報告中的頁眉。

任何意見表示讚賞。

+0

你能澄清你的問題嗎?要麼你的報告有一個子報告,要麼沒有 - 你爲什麼需要測試一個的存在? (除非子報表有條件顯示,在這種情況下,您只需使用相反的條件來顯示頁面標題。) – 2012-03-09 09:57:45

+0

我的子報表總是顯示。 (圖表包含在子報告中)。它所顯示的頁碼是可變的,但只有我希望主報告頁面標題被抑制。我希望這個說明足夠的問題 – 2012-03-09 10:55:09

回答

5

希望子報表/圖表在它自己的部分?

  • 在報告(報告報頭中的)的第一部分插入一個新的公式:global booleanvar no_header := false;
  • 插入一個新的部分與合適的有效高度爲0的子報表部的上方。
  • 在本節中插入一個新的公式:global booleanvar no_header := true;
  • 插入子報表節一個新的公式:global booleanvar no_header := false;
  • 在網頁標題條件抑制公式輸入公式:global booleanvar no_header;

您可能必須前綴所有這些公式與whileprintingrecords;

而你可能需要稍微調整我的建議,但希望你明白了嗎?

+0

當然,這將抑制子報表之後的* all *頁*上的標題,而不是*僅*帶有子報表的頁* – 2012-03-09 12:28:00

+0

不會這麼想......第4點要保證? – 2012-03-09 12:30:17

+0

啊是的 - 但是,然後,bp 4會立即覆蓋bp3(除非0高度部分和子報表部分之間立即出現分頁符),以便頁面標題永遠不會被壓制? – 2012-03-09 12:36:53

0

我建議:

  • 建立一個公式(被稱爲像ChartPage)來確定子報表將顯示的頁面。
  • 有條件地抑制PageHeader部分用一個公式,如:PageNumber={@ChartPage}
0

第1步:

創建公式fPh(只是爲了識別 「公式頁面標題」),但你可以給任何名稱。

next({Command.PolicyID}) //which is any existing field from Main report 

保存並退出。

第2步:

轉到報告,然後節專家並選擇頁眉

點擊X-2禁止常見選項卡,然後鍵入以下

PageNumber > 1 and isnull({@fPh}) 

保存它和你做公式按鈕...享受

6

在節專家,將其作爲您要隱藏的頁眉下的「抑制(無向下鑽取)」的公式:

whileprintingrecords; 
global booleanvar no_header; 

然後在您的報表嵌入腳註部分,把這個公式「延伸到後續節」:

whileprintingrecords; 
global booleanvar no_header:= true 

這樣的話,它會隱藏頁面標題,你不希望出現的時候子報告開始。

我希望這會幫助... :)

+0

謝謝!非常有效。 – 2016-01-20 07:11:43