【发布时间】:2016-10-02 09:43:32
【问题描述】:
我在 StackOverflow 或 google 中都找不到相关答案。也许你们中的一个人有答案。这是a continuation from a previous question..。
在 Business Objects Webi 中,我有两个变量。一个维度,一个度量。我的目标是创建一个简单的饼图。
这是标题为“EWFMCodeSelect”的维度变量:
`=If([Code]InList("BRK1"; "BRK2"; "BRK3" )) Then"BREAK"
ElseIf([Code]InList("TEAM"; "MTG"; "MTNG"; "PROJ"; "TRNG";"WCGB")) Then "DISC"
ElseIf([Code]InList("LUNCH")) Then "LUNCH"
ElseIf([Code]InList("LATE";"NOSHOW";"UNPAID";"UPVAC")) Then "MISS"
ElseIf([Code]InList("COACH";"VTO")) Then "NEUTR"
ElseIf([Code]InList("VAC";"LOA";"SICKUP";"SICKPL")) Then "NODISC"
ElseIf([Code]InList("PREP")) Then "OTHER"
ElseIf([Code]InList("OVER")) Then "OVER"
Else("SHIFT")`
这是名为 EWFMPieChart(%) 的度量变量:
=[TimeDiff (ToInt)]
/ NoFilter(( Sum([TimeDiff (ToInt)]
ForAll([EWFMCodeSelect])
Where ([EWFMCodeSelect] = "SHIFT")))ForEach())
我收到的先前建议是从报告块中过滤值“SHIFT”。我认为这将是一件简单的事情,但事实证明它比预期的要困难得多。我尝试在分析选项卡“EWFMCodeSelect Not Equal To SHIFT”中创建报告块过滤器 "EWFMCodeSelect 不在列表中 > SHIFT"
但最后只有一行,维度字段为空,度量字段显示#MULTIVALUE。我尝试了多种其他组合,但效果都一样。
我尝试了一个列过滤器:
=[EWFMCodeSelect] Where ([EWFMCodeSelect] <> "SHIFT")
但最后只有一行,维度字段显示:“BREAKDISCLUNCH...”作为值和度量,再次显示#MULTIVALUE。
我在这里遗漏了一些重要线索。谁能告诉我为什么这种方法不正确,并为我提供实现目标的方向?
谢谢, mfc
【问题讨论】:
标签: report business-intelligence business-objects