s-s-rS 图表数据钻取仅返回单行结果

Posted

技术标签:

【中文标题】s-s-rS 图表数据钻取仅返回单行结果【英文标题】:s-s-rS Chart Data Drill Through only returning only single row result 【发布时间】:2014-05-12 22:59:29 【问题描述】:

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

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

请帮助我了解我哪里出错了。谢谢,

【问题讨论】:

我不明白 - 为什么您希望通过单击单个值来传递多个值? 【参考方案1】:

我不会通过名称列表来定义子报表数据区域。我会按类别定义它。在您的情况下,它似乎是Sex。将您的子报表查询设置为采用@Sex 参数,并从被单击的饼图传递该值。如果您遗漏了一些使此答案无效的细节,请告诉我,我会相应地对其进行更新。

编辑 要按动态属性分组,请在查询中使用 @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)

【讨论】:

我明白这一点,但我需要超过 15 个度量来显示人口统计数据等常用度量。桌子的结构很糟糕,我无法改变它的结构,必须使用我所拥有的 wat。如果我必须传递特定的措施参数,我必须在同一个报告下创建超过 15 个子报告或 15 个 tablix,我想避免这种情况。所以只有。如果有解决方法,请教育我,如果没有,我将继续我的解决方案。感谢您的宝贵时间。 不客气,我很乐意提供帮助 :) 我会尝试让您的图表数据返回由具有相关计数的参数确定的单个 GroupBy 列,然后您的详细子报告显示所有数据,但允许参数使用 GroupByID 传递任何人口统计数据。如果您更新您的问题以包含您的查询,我可以帮助您修复它以完成此操作。

以上是关于s-s-rS 图表数据钻取仅返回单行结果的主要内容,如果未能解决你的问题,请参考以下文章

在 MDX (s-s-rS) 中执行钻取/在一个一致的维度上连接两个事实表

s-s-rS 中的钻取

BI 仪表板向下钻取的最佳方式

BI数据可视化应用:图表联动、钻取分析

s-s-rS 100% 图表没有数据标签

s-s-rS 图表报告,带有用于过滤或更改数据集的滑块