如何计算计数函数的百分比?

时间:2015-10-20 14:24:19

标签: sql-server visual-studio reporting-services bids

我正在尝试使用count函数的百分比来创建类似于这个excel文件的MS BIDS报告: Excel Close Rate Summary

机会的唯一标识符是“opportunityid”字段,因此我使用COUNT(Fields!opportunityid.Value)来确定每个阶段的案例数。我想写一个表达式,它将返回每个创建月的每个阶段的案例百分比。这可以在上面的excel截图中看到。

This is my current MS BIDS report when i preview it

更具体地说,我希望1月份“活跃”和“新”机会的百分比分别代表67%和33%。 67%来自4/6。 4来自1月创造的6个机会中的积极机会。同样,33%来自1月份创造的6个新机会。

舞台名称多于Active和New。其他选项包括New,Warm,Hot,Implementation,Active,Hibernate或Cancelled。这是相关的,因为我试图创建一个表达式,该表达式根据具有特定阶段名称的机会数量计算,但是不成功。

目前我用来计算百分比的表达式是:

= COUNT(字段!new_rptstage.Value)/ SUM(COUNT(字段!opportunityid.Value), “GroupbyStageName”)

基于这个表达式,我只能获得每个阶段名称的1/1或100%。我通过更改范围尝试了上述表达式的一些变体,但是没有成功获得所需的结果。有人可以解释如何纠正这个问题吗?

示例数据:

enter image description here

在示例数据中,我希望表达式位于百分比列中。百分比应该是该月总案例的特定阶段的案例数。所以看看上面的图片:

活跃于2月54日54/168 [以百分比形式显示54/168]

温暖2月8日8/8 等

编辑:

这些表达式可能有助于显示图表中的基础数据。 enter image description here

创建月份表达式为     = Fields!MonthCreated.Value& “”&今年(领域!createdon.Value) 上面列出了百分比表达式。

1 个答案:

答案 0 :(得分:0)

您不想使用COUNT()函数。 COUNT(*)返回具有值的行数。它不返回实际值。

由于您只显示了报告的屏幕截图,我不知道您的基础数据列如何与其相关,但您希望对Percent列表达式执行的操作是:

This is psuedo code because I don't know your dataset field names:
CaseCount.Value / SUM(CaseCount.Value)

编辑:现在我更好地了解您的数据与报告的关系,我认为您需要对现有公式进行的唯一更改是将其转换为十进制类型。它可能将所有分数舍入到1。

尝试使用百分比列中的表达式:

=CDbl(COUNT(Fields!new_rptstage.Value))/CDbl(SUM(COUNT(Fields!opportunityid.Value),"GroupbyStageName"))