在我的表格模型中,我有一个重复数据的问题。这是这些数据的来源:
HV Item Level Amount :=
IF (
OR (
MAX ( 'Item Hierarchy'[Depth] ) < [Level of Item Hierarchy],
MAX ( 'Product Hierarchy'[Level Number] ) < [Level of Product Hierarchy]
),
BLANK (),
CALCULATE (
[HV Dollar Amt],
'R R2M Group',
'P R2M Group',
FILTER (
'Item Hierarchy',
'Item Hierarchy'[Depth] = MIN ( 'Item Hierarchy'[Depth] )
)
)
)
我想在分析服务上运行此命令,以便了解为什么数字不正确。
但是我该怎么做呢?我是DAX的新手,我可以看到如果我运行evaluate 'table_name'
,它可以工作,但是我需要在上面运行整个表达式。
有人可以帮我吗?
答案 0 :(得分:1)
EVALUATE
总是返回一个表,但是您可以像这样返回一个单单元格表:
DEFINE
MEASURE 'TableName'[HV Item Level Amount] =
IF (
OR (
MAX ( 'Item Hierarchy'[Depth] ) < [Level of Item Hierarchy],
MAX ( 'Product Hierarchy'[Level Number] ) < [Level of Product Hierarchy]
),
BLANK (),
CALCULATE (
[HV Dollar Amt],
'R R2M Group',
'P R2M Group',
FILTER (
'Item Hierarchy',
'Item Hierarchy'[Depth] = MIN ( 'Item Hierarchy'[Depth] )
)
)
)
EVALUATE { 'TableName'[HV Item Level Amount] }
这应该返回表格
Value
-------
<Measure Output>
在一系列用逗号分隔的值周围使用大括号{...}
会创建一个列表,该列表在DAX中等效于具有通用列名Value
的单个列表。