我有一个分组数据集。从父组向下看,组名为: Company > Plant > Details。最后,我想得到每一家工厂的销售,看看它占整个公司销售的百分比。假设该公司的总销售额为500美元,“A厂”的销售额为100美元,“B厂”的销售额为400美元。我会想象我需要一个在植物分组级别上的表达式,类似于:
=Sum(Sales)/Sum(Sales, "Company")我会得到植物A的.2和植物B的.8,但是如果我这样做,我得到0。我完全不知所措。如果能对此提供任何帮助,我们将不胜感激。
其他信息:
我的确切设置比我下面给出的例子要复杂一些,但我相信总体观点仍然是一样的。我一共有6组:

在我的例子中,圆圈组相当于“植物”组。下面是我的表中GroupBy组的行组(箭头指向它的那个组)。

在上面的图片中圈起来的表达式是有问题的表达式,以获得“我的百分比”(现在实际上只是一个十进制,还没有格式化为百分比)。
=sum(Fields!ActualCurrent.Value)/sum(Fields!ActualCurrent.Value, "Company")在我上面的例子中,字段!ActualCurrent.Value相当于"Sales“。上面的表达式返回所有组的0。但是,如果我把它改成
=sum(Fields!ActualCurrent.Value)+sum(Fields!ActualCurrent.Value, "Company")它将生产相当于600美元的“A厂”和900美元的“B厂”。
当我把这两个和相加时,我似乎找不出它是如何反应的,但是当我把它们除以时,它会产生0。
发布于 2016-07-17 21:32:40
看看你在哪里用这个表达式来判断哪里出了问题,这将是很有用的,但是我认为你可以用这个指南来得到你想要的结果。
创建如下表格:

注意,我添加了Company和Plant字段作为组。我还删除了详细信息组。右键单击“详细信息”并选择“Delete group”并设置“只删除组”选项。

现在,在“百分比”列中使用以下表达式:
=FORMAT(
SUM(Fields!Sales.Value,"Plant")/SUM(Fields!Sales.Value,"Company")
,"P2"
)每个计划的总和除以整个公司集团的总和。没有必要,但我使用FORMAT函数将表达式返回的浮点值格式化为百分比格式,使用两位小数位。
它应该显示出这样的东西:

更新:尝试将和范围限定为特定组:GroupBy
=sum(Fields!ActualCurrent.Value, "GroupBy")/sum(Fields!ActualCurrent.Value, "Company")更新2:格式化单元格以显示十进制数字。
使用这个短语:
=FORMAT(
sum(Fields!ActualCurrent.Value, "GroupBy")/sum(Fields!ActualCurrent.Value, "Company"),
"F2"
)它将将表达式返回的值格式化为带有两个小数位数的浮点数。
如果要以百分比格式显示值,请替换P2表达式中的P2(用两个小数位数表示百分比格式)。
如果这有帮助的话请告诉我。
https://stackoverflow.com/questions/38425136
复制相似问题