![](/img/trans.png)
[英]SQL Server Reporting Services 2005 - How can I get the report to scale to one page wide when printing?
[英]How do I show data in the header of a SQL 2005 Reporting Services report?
開箱即用的SSRS報告無法在頁眉中公開數據。 有沒有辦法讓這些數據顯示出來?
我在報告中想要的一件事就是為報告提供好的標題。 我希望有一個徽標和用戶的報告參數以及其他數據,以便為報告需要澄清的業務需求提供更多信息。 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
在Report Body中,為Page Header中所需的每個數據字段放置一個TextBox。 在每個TextBox的Visibility中,選擇True for Hidden。 這將是頁眉中所需數據的占位符。
alt text http://www.cloudsocket.com/images/image-thumb4.png
您的報告應與下面顯示的屏幕截圖類似。
alt text http://www.cloudsocket.com/images/image-thumb5.png
最后一步,最重要的是引用位於頁眉中的TextBox中的隱藏文本框。 我們使用以下表達式來引用所需的TextBoxes:
= ReportItems!.value的
您的報告現在應該類似於以下內容:
alt text http://www.cloudsocket.com/images/image-thumb6.png
您的報表預覽現在應該在報表頭中包含銷售訂單表頭數據。
你必須通過參數來做到這一點。 為要顯示的每個數據添加一個參數,然后將參數設置為Hidden。 然后將默認值設置為“From Query”並將“數據集和值”字段設置為適當的值。
我認為最好的選擇是創建一個內部參數,默認值是您要顯示的數據集的字段。
我想在標題中顯示所有返回行共有的字段,對於這種情況,我選擇了鏈接表解決方案(將包含字段的表放在正文中並將標題中的文本框鏈接到此表)。
我這樣做是因為如果您正在使用參數解決方案並且沒有數據返回到相關字段,則會顯示“參數缺少值”文本而不是空白表。 我估計這個文本會混淆用戶(因為參數甚至不可見)。
如果您的報表跨越多個頁面,使用查詢參數而不是這種技術是行不通的,並設置文本框的值=參數!Name.Value按照這篇文章 。
我和獵戶座阿德里安在這里。 報告參數是要走的路。
以下是兩種可能的解決方法 :
您可以將數據綁定字段作為隱藏文本框放在報表正文中,然后在標題中放置另一個文本框,其值指向隱藏在正文中的文本框。
嘗試使用報告參數來存儲數據,並使用這些參數來訪問標頭中的數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.