如果要考虑两个参数,如何在SSRS中定义行数据组?

问题描述 投票:-1回答:1

对于SSRS报告是新手。我正在尝试在* .rdl文件中进行编辑,该文件具有行数据分组以查看一个月的数据。

例如:=Fields!EndOfMonth.Value

这里EndofMonth将返回9月30日/ 10月31日,依此类推。因此,该表按一个月的数据分组。我需要为自定义数据范围进行编辑。

例如:startdate='2019-09-05', enddate='2019-10-12'

因此,报表表应显示9月5日至10月12日之间的行。

我在* .rdl文件中定义了两个startdate enddate参数。但我不知道,如何根据条件在两个日期范围之间切换。也就是说,如果companyid <> 50选择自定义范围,则为标准。

例如:我是这样定义的,但是在这里我只能指向一个参数(我仅使用enddate)。因此报告仅显示10月1日至12日之间的行。如何修改条件?

=IIF(Parameters!CompanyId.Value<>50,Fields!EndofMonth.Value, Parameters!EndDate.Value)

编辑

我定义了2个可在公司ID之间切换的数据集。

我根据尼克斯的答案修改了上述条件,但是我无法使用函数问题来查询功能。我尝试了两种方式,但是一次又一次得到相同的行

=IIF(Parameters!CompanyId.Value<>50,Fields!EndofMonth.Value,
 IIF(Lookup(Fields!TankDateCombo.Value, Fields!TankDateCombo.Value,Fields!Date.Value,"Dataset2")
 >= Parameters!StartDate.Value,Fields!EndofMonth.Value,
Parameters!EndDate.Value))


=IIF(Parameters!CompanyId.Value<>67,Fields!EOM.Value,
 IIF(Day(Lookup(Fields!TankDateCombo.Value, Fields!TankDateCombo.Value,Fields!Date.Value,"OESNeoData"))
 >= Day(Parameters!StartDate.Value), Fields!EOM.Value,
Parameters!EndDate.Value))

MY数据集包含以下数据;enter image description here

reporting-services ssrs-2012 ssrs-2008-r2 ssrs-tablix
1个回答
0
投票

我通过简单地删除该行组并传递两个数据集的开始/结束日期来解决此问题

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