0

我正在尝试使用 SSRS 2008 R2 检查我们是否符合记录患者信息的标准。例如,在 PatientID 的组标题中,我有=Not IsNothing(Fields!DATEOFBIRTH.Value). 现在,我想计算返回 True 的患者人数。显而易见的方法是

=Sum(Iif(Not IsNothing(Fields!DATEOFBIRTH.Value)
        , 1
        , 0
        )
    )

(这实际上是行不通的,因为我每个病人都有多行,但暂时不要介意。)问题是,如果我发现我的逻辑是错误的,我必须在两个地方进行更正,它赢了如果我忘记了,那就不明显了。在 Crystal 中,我要么使用运行计数,评估组的变化,要么使用手动计数WhilePrintingRecords;,在两个位置都有一个返回 T/F 结果的公式。普遍接受的 SSRS 方法是什么?谢谢。

4

1 回答 1

2

如果要集中逻辑,可以在报表中使用自定义代码或创建自定义程序集。使用自定义代码,如果您发现需要进行更改,则必须更新使用相同逻辑的每个报告,但添加到报告中很简单。使用自定义程序集,您必须创建一个类库,对其进行编译并将代码添加到您的机器,以便 BIDS 可以使用它(如果适用,还可以使用到每个开发人员的机器)和报表服务器。自定义程序集的优点是有一个存储逻辑的地方(不计算 DLL 的分布),因此当您更新逻辑时,每个报告都会自动更新。此链接是您的起点,并提供有关这两个选项的更多详细信息的链接:http: //msdn.microsoft.com/en-us/library/ms155798 (v=sql.100).aspx 。

于 2012-06-10T03:48:32.133 回答