我是Spotfire的新手。我想计算每个工厂对各自基础产品的贡献百分比。您可以在下图中看到。我正在使用follwoing experession进行计算,但它给了我一个恒定值1.
表达:
Sum([Value]) / Sum([Value]) OVER (Intersect(Parent([Base Product]),AllPrevious([Plant])))
有人可以告诉我我做错了什么。谢谢!
`
答案 0 :(得分:1)
根据我的评论(没有时间完整答案):
[Value]在OVER表达式中用于标记您希望表达式的结果使用的位置,因此如果表达式的结果为15,则最终得到15/15 = 1。
要解决此问题,我认为应该将您的“价值”列更改为但值,我将使用“贡献”作为我的示例,与您的完全相同,但使用重命名的列:
Sum([Value]) / Sum([Contribution]) OVER (Intersect(Parent([Base Product]),AllPrevious([Plant])))
假设你的过度表达是正确的,那就应该这样做。