心静自然凉~

一杯清茶、二盏淡酒、邀三五知己,诉七八句心语,道九分珍重,怀十分真诚,或伤感、或快乐,无现实之隔阂 、无世俗之势利,如此人生,不亦乐乎!

导航

SQLReporting Service

Posted on 2007-09-14 16:35  Leo.Zhu  阅读(265)  评论(0编辑  收藏  举报

刚刚做完ejob 的Client的开发,马上开始要写20张Report了.

环境是SQL2000 + SQLReporting Service.

微软的REportingService 真实一个好东西,做报表很方便,而且设定和管理都很方便. 以前也用过水晶报表,但是感觉开发上不是很舒服,可能我还不太会用那个的关系把.


在本次开发中,主要用vb.net 写网页,然后调用ReportingService 来显示报表,还好vb.net有现成的框架,不然真让我头疼,一直接触的都是C#,突然要用vb还真是....虽然以前有用过,但是不熟,怕在预估的时间内完不成,真是庆幸,只要简单的修改就OK了。

开发的逻辑:

aspx 调用 URL显示Report, Report 使用SP(存储过程,报表的逻辑都在这个里哦)显示。

调用那个URL的格式:

http://192.168.0.9/ReportServerTW?%2freports%2fReport_2_6&rs:Format=HTML4.0&rc:Parameters=false&rc:Toolbar=true&rs:Command=Render&DateType=1&xxx=2001-1-1&xxxxxxx=2007-7-7&XXXX=%e4%bf%a1%e7%94%a8%e5%8d%a1%e7%94%b3%e8%ab%8b%2c%e4%bf%a1%e7%94%a8%e5%8d%a1%e9%a4%98%e9%a1%8d%e4%bb%a3%e5%84%9f%2c%e5%ad%98%e6%ac%be%2c%e4%bf%a1%e8%a8%97%e5%9f%ba%e9%87%91%2c%e4%bf%9d%e9%9a%aa%e5%95%86%e5%93%81%2c%e8%aa%9e%e9%9f%b3%e9%8a%80%e8%a1%8c%2c%e7%b6%b2%e8%b7%af%e9%8a%80%e8%a1%8c%2c%e4%bd%b3%e8%bf%aa%e7%a6%8f%e4%bf%9d%e9%9a%aa%2c%e7%8f%be%e9%87%91%e5%8d%a1%e7%94%b3%e8%ab%8b%2c%e4%bc%81%e6%a5%ad%e6%94%be%e6%ac%be%2c%e7%8f%be%e9%87%91%e5%8d%a1%e9%a1%8d%e5%ba%a6%e8%aa%bf%e6%95%b4%2c%e4%bf%a1%e7%94%a8%e8%b2%b8%e6%ac%be%2c%e6%88%bf%e8%b2%b8%2c%e5%85%b6%e4%bb%96&xxxx=&yyyyy=%e5%91%a8%e6%85%b6%e6%ba%90


其实就是

http://192.168.0.9/ReportServerTW?%2freports%2f + ReportName + &rs:Format=HTML4.0&rc:Parameters=false&rc:Toolbar=true&rs:Command=Render + 参数

&rs:Format=HTML4.0 这个参数 好像在ie6上不使用也可,通过其他命令也可显示报表的toolbar ,但是在ie7上就有时不会出现,我也不知道什么原因, 先加上使用吧。

个参数可以查看Reporing Service 的使用手册。


参数中如果包括汉字的话,需要使用UrlEncode 方法转换一下哦。Server.UrlEncode(要转换的文字)


Report 中每行颜色交替显示:

=iif(RunningValue(1,sum,nothing) mod 2 = 0 ,"LightGrey","white")

显示几位小数: N3 表示0.000 F表示一个浮点行