表达式是我们在实时开发的大多数报表中完美的解决方案。但在某些情况下,我们可能需要复杂的函数或计算。在这些情况下,我们可以使用 SSRS 中的自定义代码概念。
自定义代码创建了合并到报表中的自定义函数。或者创建 DLL(类库),以便我们可以在多个报表中重用相同的函数。在本文中,我们将通过实际示例向您展示在 SSRS 报表中添加自定义代码的逐步方法。
为了演示在 SSRS 报表中添加自定义代码的步骤,我们将使用我们下面展示的先前生成的报表。请参阅 格式化日期和时间 文章以了解 SSRS 报表数据。请查看上述链接的报表预览以查看数据。如您所知,这是一个相当普通的 表格报表,包含 14 条记录以及格式化的日期和时间。
如何在 SSRS 报表中添加自定义代码
要添加自定义代码,我们必须访问报表属性。为此,右键单击报表设计器中的空白区域将打开上下文菜单。请选择报表属性选项。

或者,转到报表菜单并选择报表属性子菜单,如下所示。

无论哪种方式,都会打开以下报表属性窗口。使用页面设置窗口设置纸张大小。在本文中,我们将重点关注自定义代码。因此,请导航到代码选项卡以在报表中编写自定义代码。这里,我们编写一个简单的函数,它将返回消息“欢迎来到 Tutorial Gateway”。SSRS 中的自定义代码是
Function WelcomeMsg() As String return "Welcome to Tutorial Gateway" End Function

我们已完成创建函数。现在,我将在报表中使用该函数。为此,请在页面页眉中添加一个 文本框。接下来,右键单击文本框将打开上下文菜单。请从中选择表达式选项。

选择表达式选项后,将打开一个新窗口来编写表达式。在此处,写入 Code.WelcomeMsg(即 Code.FunctionName)并单击确定。
请记住,添加自定义代码的语法是 Code.Function_Name(Parameter1,….,ParameterN))
Code.WelcomeMsg (i.e., Code.FunctionName)
现在,让我向您展示添加 SSRS 自定义代码后的报表预览。从下面的屏幕截图中,您可以看到我们在函数中创建的消息。

接下来,我将向报表属性代码添加另一个函数。
Function GreetingMsg() As String
If (DateTime.Now.Hour < 12) Then
Return "Good Morning Suresh"
ElseIf (DateTime.Now.Hour < 17) Then
Return "Good Afternoon Suresh"
Else
Return "Good Evening Suresh"
End If
End Function

接下来,将以下代码添加到页眉中的第二个文本框

如您所见,我们已格式化文本框。

让我向您展示将自定义代码添加到 SSRS 报表后的报表预览。
