65.9K
CodeProject 正在变化。 阅读更多。
Home

SSRS 技巧

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2013 年 10 月 11 日

CPOL

2分钟阅读

viewsIcon

14315

以下是一些SSRS技巧:1.      使用Tablix控件在报表中显示前N行 创建一个IntegerDataType类型的参数,并选择默认值

以下是一些SSRS技巧

1.      使用Tablix控件在报表中显示前N行
创建一个IntegerDataType类型的参数,并在属性中选择默认值,在特定值下添加要显示的行数的表达式 (例如 cint(10))。 现在右键单击Tablix控件并选择属性,选择筛选器并添加新筛选器
表达式=字段名
运算符=前N个
值= =Parameters!TopN.Value 作为表达式。
现在,在报表中将显示前N行。

2.      在报表页脚中获取总页数和每页的页码
添加文本框并分配以下表达式以在报表的页脚中显示总页数和页码
="Page "+ Globals!PageNumber.ToString() +" of"+Globals!TotalPages.ToString()

3.       使用ReportViewer查看SSRS报表
添加以下示例代码以查看部署在服务器中的报表:

ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://计算机名:8080");
ReportViewer1.ServerReport.ReportPath = @"/Examples/Sample";
ReportViewer1.ProcessingMode = ProcessingMode.Remote;
ReportServerCredentials _ReportCredentials = new ReportServerCredentials("windows用户名","密码");
ReportViewer1.ServerReport.ReportServerCredentials = _ReportCredentials;
ReportViewer1.ServerReport.Refresh();
ReportViewer1.AsyncRendering = false;
ReportViewer1.SizeToReportContent = true;

4.      在运行时向SSRS报表中的Tablix控件或文本框添加字体样式
从菜单中选择报表,然后从菜单中选择代码,添加以下代码以在运行时向控件添加字体样式。 我有一个报表,想要在运行时添加报表标题的字体样式
Public Function GetColor(ByVal Section as String) as String
IF Section ="Report Heading" Then
                                Return "SteelBlue"
        End IF
End Function
Public Function GetSize(ByVal Section as string) as String
                IF Section = "ReportHeading" Then
                                Return "20pt"
                End IF
End Function
Public Function GetFont(ByVal Section as string) as String            
                Return "Arial"    
End Function
在报表标题中,我添加了一个文本框以显示报表标题,并在运行时添加样式。
现在,右键单击文本框并选择属性,在字体下添加以下表达式以在运行时添加样式。 
在字体中 ==Code.GetFont(“ReportHeading”) 作为表达式
大小==Code.GetSize(“ReportHeading”) 作为表达式
颜色== Code.GetColor(“ReportHeading”) 作为表达式

5.      在运行时隐藏/显示文本框,Tablix控件
如果Tablix中没有要显示的数据,那么我不想在报表中显示Tablix控件。
右键单击Tablix控件并选择可见性,然后在基于表达式的显示或隐藏下添加以下表达式。
=iif(RowNumber(Nothing)> 0,False,True).
如果没有数据,这将隐藏tablix,否则它将显示带有数据的表。

6.      在Tablix控件中添加交替行颜色
右键单击Tablix控件的详细信息组,在backgroundColor下添加以下表达式
=iif(RowNumber("DataSet") mod2 = 0,"Steelblue",”White”)

7.      在报表参数中格式化日期时间
=Format(Parameter!Parameter1.value,"MM/dd/yyyy")
=Format(Parameter!Parameter1.value,"dd/MM/yyyy")
=Format(Parameter!Parameter1.value,"yyyy-MM-dd")
=Today()              //当前日期

© . All rights reserved.