SSRS * .rdl中有一个数据集可控制其他数据集?

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

我在* .rdl中看到一个神秘的举动。我定义了2个数据集。我定义了4个参数,

  • StartDate,EndDate, companyid, sitecode

对于两个数据集,我都定义了一个选择查询。

  • DatasetA使用@Enddate
    • DatasetB不使用它(它使用,startdate,companyid,sitecode)

我也想从数据集A中删除@EndDate。因此,即时通讯使用@startdate参数定义结束日期,并在我的sql查询中使用它。例如:

DECLARE @eDate AS date =EOMonth(@StartDate)

但是摆脱掉@EndDate之后,我的第二个数据检索的数据更少。(即:如果它应该返回9月和10月的数据,那么现在仅从9月返回)我到处都检查了rdl,rowgroup / column组,但是没有定义任何这样的过滤器。仅当我从第一数据集中更改@EndDate参数时,我才能看到此行为。

例如:宣告@eDate AS日期= EOMonth(@StartDate)

Select ..
Where date>=@StartDate AND date<=@Enddate to date<=@eDate

我们在任何地方都将参数用作过滤器检查吗?如果是这样,我如何检查它在* .rdl中的使用位置?

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

我知道了这个问题。这是由于我在两个数据集之间都使用了查找功能。因此,当dataset2尝试检索正确的行数时,dataset1在对其进行控制,因为它没有在该日期返回行。例如:dataset1返回9月数据,而dataset 2返回9月+ 10月数据。由于具有查找功能,Dataset1控制数据集2的十月数据。

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