如何向报表添加代码 (Reporting Services)
您可以在任何表达式中调用自己的自定义代码。可以通过下列两种方式提供代码:
直接在报表中使用 Visual Basic 编写的嵌入代码。如果代码引用非 System..::..Math 或 System..::..Convert 的Microsoft.NET Framework,必须向报表中添加引用。有关详细信息,请参阅如何向报表添加程序集引用 (Reporting Services)。有关可以使用的代码中其他引用的详细信息,请参阅在表达式中使用自定义代码引用 (Reporting Services)。
使用 .NET Framework 提供自定义代码程序集。如果提供自定义程序集,则必须同时在创作报表的计算机上和查看报表的报表服务器上安装该自定义程序集。有关详细信息,请参阅将自定义程序集用于报表。
向报表添加嵌入代码
在**“设计”视图中,右键单击报表边框外的设计图面,然后单击“报表属性”**。
单击**“代码”**。
在**“自定义代码”**中键入代码。报表运行时,代码中的错误会引发警告。下面的示例创建一个名为 ChangeWord 的自定义函数,该函数可使用词语“Bicycle”替换“Bike”。
Public Function ChangeWord(ByVal s As String) As String Dim strBuilder As New System.Text.StringBuilder(s) If s.Contains("Bike") Then strBuilder.Replace("Bike", "Bicycle") Return strBuilder.ToString() Else : Return s End If End Function
下面的示例演示如何在表达式中向此函数传递名为 Category 的数据集字段。
=Code.ChangeWord(Fields!Category.Value)
如果将此表达式添加到显示类别值的表单元,则只要该行的数据集字段中出现词语“Bike”,表单元值就会显示词语“Bicycle”。