Reporting Service報表開發

2022-01-11 01:01:03 字數 1299 閱讀 2600

專案中需要用到報表,經過技術驗證和成本方面的考慮,最後決定使用reporting service,因此在這裡把開發中的一些故事記下來,以備後用。

開發環境:vs2005,sql server 2005 sp3,這裡說下為什麼要用sp3,安全問題嘛,呵呵,如果用sp2,就會出現報表無法列印,報的錯誤是「無法載入客戶端列印控制項」,公升級成sp3就ok了。

對於形如grid的這種**,用rs來做超級簡單,直接拖拽個**就ok了。難的是中國式報表,比如下面這個:

直接用**來做比較麻煩,用矩陣來做的話,上圖中的「其中」又不好畫出來。

對這種情況,偷一下懶,先用文字框繪製靜態的部分,堆乙個**,然後用**來顯示空具體的資料

最後執行的結果

將前面的報表稍微修改下,在資料來源裡加上乙個引數,比如

select  top 8 s.salesorderid, e.employeeid, e.title, s.salesordernumber, title=@title

from     sales.salesorderheader as s inner join

humanresources.employee as e on s.salespersonid = e.employeeid

這裡的@title就是乙個引數,需要在執行的時候提供

在web中顯示報表可以通過ms提供的reportviewer控制項,

在控制項的標記裡可以直接設定報表所在的路徑,當然,這些都可以在**裡來實現

比如reportparameter parameter = new reportparameter("title", "test");//新增引數

listlist = new list();

list.add(parameter);

this.reportviewer1.serverreport.setparameters(list);

this.reportviewer1.showparameterprompts = false;   //不顯示引數提示

執行的效果:

reportingservice 報表開發雜項

1 新增行號 rownumber nothing ssrs內建函式rownumber,這裡最主要的是傳入引數 nothing 2 行間不同背景色的設定 iif rownumber nothing mod 2,white gainsboro 通過行號模2,設定背景顏色。3 分母為0的處理 iif fi...

Reporting Service報表水印的新增

1 水印產生程式碼 using system using system.data using system.configuration using system.drawing using system.drawing.imaging watermarkcreater 的摘要描述 public cl...

Reporting Service報表空白頁問題

這幾天解決reporting service報表空白頁問題,發現幾個注意點,記錄下來以備以後參考 注意報表中包含子報表的,如果父子兩個報表都新增了分頁符則會一定會出現空白頁,所以要把子報表的分頁符去掉 還是報表中包含子報表的,在只有父報表加了分頁符的情況下如果子報表沒有資料,預設情況下也會把它佔的空...