SSRS - 使用不同数据集字段的表达式

问题描述 投票:0回答:3

我有一份包含多个数据集的报告。不同数据集中的不同字段用于报告的不同位置。

在报告的一部分中,我需要使用两个不同数据集中的字段进行计算。这在表达式中可能吗?
我可以以某种方式在表达式中引用该字段所在的数据集吗?

例如,我想做这样的事情:

=Fields.Dataset1.Field / Fields.Dataset2.Field
reporting-services dataset ssrs-2008 reportbuilder3.0 bids
3个回答
20
投票

您可以通过指定字段的范围来实现这一点,如下所示:

=First(Fields!fieldName_A.Value, "Dataset1") / First(Fields!fieldName_B.Value, "Dataset2")

假设 A 是 10,B 是 2,并且它们是数字类型,那么当报表呈现时,您将得到 5 的结果。

当您在表达式生成器中时,您可以选择类别:数据集,在项目:下突出显示所需的数据集,然后双击值:下的所需字段,它将出现在表达式字符串中并添加范围。

使用相同的逻辑,您可以像这样连接两个字段:

=First(Fields!fieldName_A.Value, "Dataset1") & “ “ & First(Fields!fieldName_B.Value, "Dataset2")

3
投票

正如 PerPlexSystem 所写,假设您只想将一个数据集中的第一个值与另一个数据集中的值进行比较,则可以使用 First 函数。

但是,如果您想要将一个数据集的每一行的值与另一个数据集的每一行的值进行比较,那么您将需要使用子报告 - 请参阅此处了解更多详细信息。


1
投票

另一种选择是使用参数作为变量。如果您想在其中一个数据集中创建计算字段,这会很有帮助。当参数值来自具有单个记录的数据集时,最好应用此方法。

© www.soinside.com 2019 - 2024. All rights reserved.