標籤:
說明:
開發工具為: SQL Server Data Tools 開發環境為: SQL Server 2012
一. 餅圖資料外部顯示
首先我們來看3張: 內部顯示 、 外部顯示 、 3D效果-外部顯示
預設是內部顯示, 如何設定為外部顯示呢?如:
設定好後資料是顯示在外部了,但並沒有出現資料和圖之間的連接線條。想要顯示線條,那麼就要開啟3D效果,步驟如下:
二. 將數值轉為百分比顯示
如樣本一中的數值分別為: 76 , 39 , 6 , 25 。 如果將其轉為百分比則為: 76 / (76+39+6+25) , 39 / (76+39+6+25) , 6 / (76+39+6+25) , 25 / (76+39+6+25) 。 也就是說我們要先得到總和,然後再用單個值去除以總和。具體實現如下:
步驟一 > 我們要修改 Series Label 的屬性, 而不是去修改餅圖的 Values。 因為餅圖的Values是只接受數字類型的值,如果你設定的值是字元類型,那麼圖餅將不會顯示。 而百分比形式的資料帶有 % 號,肯定是字元類型的。因此要手動設定展示的 Label, 而不是去設定Values。
步驟二 > 運算式的書寫。
此時你點儲存按鈕會彈出一個提示框,如:
這個提示框的意思就是要將 UseValueAsLabel 屬性設定為False, 我們上面Label Data 裡面寫的運算式才會生效。 因為預設是直接將從資料庫中取出的值進行展示的(數字類型),而現在我們手動設定了展示的 Label Data, 所以要將UseValueAsLabel 設定為False, 不使用直接從資料庫中取出的值。
步驟三 > 把資料設定為百分比格式。
其實我們也可以省略步驟三, 直接將步驟二中的運算式寫成如下形式就行了
=FormatPercent(Sum(Fields!Percent.Value) / Sum(Fields!Percent.Value, "PercentDS"), 2)
三. 表格奇偶行背景色的設定
實現步驟如下:
=iif(RowNumber(nothing) mod 2 = 0, "#DDDDDD", "Transparent")
四. 列印匯出的相關設定
我們在對報表進行匯出或列印是經常會遇到格式錯亂的現象,原因是我們的相關設定沒有做好。 匯出列印通常都是針對 A4 格式的紙張而言的,所以我們在進行列印或匯出之前要先對報表進行大小的設定。
步驟一 >
步驟二 >
步驟三 >
五. 表格行號的設定
實現如:
六. 自訂函數的使用
有些時候內建的函數方法並不能滿足我們的需求,那麼我們就可以自己實現一個方法,然後調用它。 舉個執行個體: 在之前的一次報表開發中,有這樣一個需求: 文字框的背景色必須是動態, 其背景色根據資料庫中存有顏色的RGB的字串的值來動態指定(如: "255,255,123")。 雖說背景色也是可以應用運算式的,但它只識別顏色名(如: Gray )和16進位格式(如: #DDDDDD)的顏色值,並不支援RGB的顏色數值。這個時候就只能自己來實現一個設定RGB顏色的函數。
我們的自訂函數寫在哪?
步驟一 >
步驟二 >
因為SSRS裡面應用的是VB文法,因此要想寫自訂函數,必須先學習VB文法。 實現 RGB 顏色設定的函數代碼如下:
Public Function SetRGB(paramValue As String) As String Dim StrRGB() As String StrRGB = Split(paramValue , ",") SetRGB = String.Format("#{0:x6}", RGB(CInt(StrRGB(0)), CInt(StrRGB(1)), CInt(StrRGB(2))))End Function
函數定義好後,我們該如何調用呢?
因為自定函數都是掛在 Code 下面的,所以調用的時候必須是 Code.SetRGB() 。 運行之後的效果如:
SSRS(RDLC)報表開發的一點小技巧