SSRS图表数据钻取仅返回单行结果

时间:2014-05-12 22:59:29

标签: sql-server-2008 reporting-services charts ssrs-2008

我的报告中有一个饼图,其中包含值名称和性别(M或F)的类别。我有一个钻取报告,其中包含与该名称相关的其他人口统计信息。我想传递用户点击的数据区域以获取子报告中的相关数据。我在设置参数时使用了所有标准noms,并使用了系列操作转到新报告。

问题:当我将参数(用户点击的数据区域,即名称)传递给钻取报告时,只有单行被检索。 1.我将查询设置为使用IN 2.没有值(0)被传递 3.多值选项是chckd。

请帮助我了解我出错的地方。谢谢,

1 个答案:

答案 0 :(得分:0)

我不会通过名单列表定义子报告数据区域。我会按类别定义它。在您的情况下,它似乎是Sex。设置子报表查询以获取@Sex参数,并从单击的Pie Slice中传递该值。请告诉我,如果你遗漏了一些细节使这个答案无效,我会相应地更新它。

修改 要按动态属性进行分组,请在查询中使用@GroupBy参数,并从报告中传递该参数。您的查询将如下所示:

select
    case @GroupByID
        when 1 then Sex
        when 2 then State
        when 3 then Age
    end GroupBy,
    count(*) Cnt
from YourTable
group by
    case @GroupByID
        when 1 then Sex
        when 2 then State
        when 3 then Age
    end

然后,您的详细子报告将采用两个参数:@GroupByID@GroupByFilter。您可以使用@GroupByID = @GroupByID@GroupByFilter = Fields!GroupBy.Label从图表中传递这些内容。您的SQL子报告将是这样的:

select *
from YourTable
where
    (@GroupByID = 1 and Sex = @GroupByFilter) or
    (@GroupByID = 2 and State = @GroupByFilter) or
    (@GroupByID = 3 and Age = @GroupByFilter)