gpt4 book ai didi

visual-studio-2012 - 如何获得SSRS 2012前10大销售额的总和

转载 作者:行者123 更新时间:2023-12-04 04:53:26 25 4
gpt4 key购买 nike

我正在将SSRS 2012中按产品类别分组的销售量排名前10位。
我需要前十名的总数,但它显示了完整的总数。我无法在数据集级别执行此操作,因为我需要报告中其他部分的完整数据集。我尝试了MSDNlink中给出的解决方案,但这也没有帮助。提前致谢。

最佳答案

这种方法实际上效果很好。

您尚未对数据/元数据的概念一无所知,但是可以通过一个简单的示例来解释这些概念。考虑以下数据:

我们将基于此创建一个简单的报告,并按grp列分组:

按总值对组进行排序,从最高到最低:

为了获得运行排名和运行总数,我们使用RunningValue函数。

要获得组排名,请使用:

=RunningValue(Fields!grp.Value, CountDistinct, Nothing)

要获得运行总使用量:
=RunningValue(Fields!val.Value, Sum, Nothing)

最后,我们需要显示前N个值的总计;在这种情况下,我显示的是前2个。

对于第二个组详细信息行,请使用以下 行可见性表达式:
=IIf(RunningValue(Fields!grp.Value, CountDistinct, Nothing) = 2, false, true)

也就是说,仅在存在两个组(即前2个)时才显示此行。您可以根据需要更改该值。

这向我们显示了所需的总行数:

您需要将这些概念应用于您的数据。如果您仍然遇到问题,建议您尝试使用上面的数据/代码复制我的结果,以确保您了解所涉及的所有概念。

评论后编辑:

对于少于N个组但仍要显示最后一个总数的情况,您需要对前N行 行可见性表达式添加额外的检查,例如:
=IIf(RunningValue(Fields!grp.Value, CountDistinct, Nothing) = 10
or (RunningValue(Fields!grp.Value, CountDistinct, Nothing) = CountDistinct(Fields!grp.Value, "DataSet1") and CountDistinct(Fields!grp.Value, "DataSet1") < 10)
, false
, true)

因此,现在表达式将在第10行显示,或者如果DataSet中的组总数少于10,则将在最后一行显示。

有点复杂,但是过去对我有用。根据您的数据和报告设置,您可能需要对 作用域进行一些尝试,以使其在您的环境中正常工作。

关于visual-studio-2012 - 如何获得SSRS 2012前10大销售额的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17275232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com