2008-09-15 61 views

回答

6

我想在我的報告中的一件事情是爲我的報告提供很好的標題。我喜歡將徽標和用戶的報告參數與其他數據一起顯示,以便爲報告需要闡明的業務需求提供更多信息。 Microsoft SQL Server 2005 Reporting Services本身無法執行的一件事是在標題中顯示來自數據集的數據。這篇文章將解釋如何解決這個問題,以及它是多麼容易。

在商業智能項目部分創建報表服務器項目並將其稱爲AdventureWorksLTReports。我使用CodePlex中的AdventureWorksLT示例數據庫。

alt text http://www.cloudsocket.com/images/image-thumb.png

下一頁通過與設計師的報告區右擊顯示的頁面頁眉。

alt text http://www.cloudsocket.com/images/image-thumb1.png

頁標題將出現。如果您想顯示頁面頁腳,可以從與頁眉相同的菜單訪問。

alt text http://www.cloudsocket.com/images/image-thumb2.png

我創建了一個存儲過程返回銷售訂單在頁眉呈現數據。我將顯示在頁面頁眉有關銷售訂單的下列信息:

  • 訂購日期
  • 銷售訂單號
  • 公司
  • 銷售人員
  • 總計由於

我爲頁面標題中的每個數據字段創建一個TextBox以及相應標籤的TextBox。不要更改您要在銷售訂單數據的文本框的表達。

alt text http://www.cloudsocket.com/images/image-thumb3.png

在報告正文,放置在頁面頁眉所需的每個數據字段一個TextBox。在每個TextBox的可見性中,爲隱藏選擇True。這將是頁眉中所需數據的佔位符。

alt text http://www.cloudsocket.com/images/image-thumb4.png

您的報告應該類似於如下所示的屏幕截圖。

alt text http://www.cloudsocket.com/images/image-thumb5.png

最後一步也是最重要的是,以引用隱藏文本框在位於頁標題文本框。我們用下面的表達式來引用所需文本框:

= ReportItems .value的

現在您的報表應該類似以下內容:

alt text http://www.cloudsocket.com/images/image-thumb6.png

你的報告預覽現在應該有報表標題中的銷售訂單標題數據。如果您的報表跨越多個頁面,使用查詢參數而不是

alt text http://www.cloudsocket.com/images/image-thumb7.png

+1

你可以更新鏈接到你的圖片,以便它們不被破壞? – 2015-01-16 21:36:05

4

你必須通過參數來完成它。爲每個想要顯示的數據添加一個參數,然後將該參數設置爲隱藏。然後將默認值設置爲「從查詢」並將數據集和值字段設置爲適當的值。

0

這裏有兩種可能的變通方法

  1. 您可以將報告正文內的數據綁定字段作爲隱藏的文本框,然後在頭的地方用它的另一個文本框的值指指隱藏在身體內的那個。

  2. 嘗試使用報告參數來存儲數據,並使用這些參數來訪問標題中的數據。

0

這種技術是行不通的,並設置文本框的值=參數!Name.Value按this article

+0

它的工作原理非常好,我在長篇報告中做了多個頁面 您需要做的是觀察放置佔位符字段的位置,使用表格顯示錶格數據並創建額外的列,然後隱藏它們。沒有問題。 – neslekkiM 2008-10-06 07:42:49

0

我和Orion Adrian在這裏。報告參數是要走的路。

1

我認爲最好的選擇是創建一個內部參數,默認值是要顯示的數據集的字段。

0

我想在標題中顯示一個對所有返回行都通用的字段,對於這種情況,我去了鏈接表解決方案(將一個包含字段的表放在主體中,並將​​標題中的文本框鏈接到本表)。

我這樣做是因爲如果您使用參數解決方案並且沒有數據返回到問題字段中,則會顯示文本「Parameter is missing a value」,而不是僅顯示一個空白表格。我認爲這段文字會讓用戶感到困惑(因爲參數甚至不可見)。

相關問題