Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 为什么Sales(CALCULATE/FILTER)不将自己限制为该行的产品颜色?_Powerbi_Dax - Fatal编程技术网

Powerbi 为什么Sales(CALCULATE/FILTER)不将自己限制为该行的产品颜色?

Powerbi 为什么Sales(CALCULATE/FILTER)不将自己限制为该行的产品颜色?,powerbi,dax,Powerbi,Dax,首先,它将创建与当前过滤器上下文相关的产品的独特列表(因为使用了值) 然后它将迭代上面列表的每一行并执行计算 CALCULATE i understand将当前行(颜色)添加到过滤器上下文。因此,在计算中,我试图理解为什么过滤器中的销售不将自己限制为相应的颜色,即使相应的颜色在过滤器上下文中 当计算通过将颜色(从行上下文)添加到过滤器上下文中进行转换时,由于某种原因,该颜色不会过滤销售表。对于计算步骤的执行顺序,首先在现有过滤器上下文中计算过滤器,然后再进行上下文转换 这意味着Sales表尚未按

首先,它将创建与当前过滤器上下文相关的产品的独特列表(因为使用了值)

然后它将迭代上面列表的每一行并执行计算

CALCULATE i understand将当前行(颜色)添加到过滤器上下文。因此,在计算中,我试图理解为什么过滤器中的销售不将自己限制为相应的颜色,即使相应的颜色在过滤器上下文中


当计算通过将颜色(从行上下文)添加到过滤器上下文中进行转换时,由于某种原因,该颜色不会过滤销售表。

对于计算步骤的执行顺序,首先在现有过滤器上下文中计算过滤器,然后再进行上下文转换

这意味着Sales表尚未按颜色过滤

然后发生过滤器上下文,将当前迭代的“Product”[Color]上的过滤器添加到计算中的过滤器上下文

最终应用了“超额销售过滤器”

由于这是对整个Sales表的筛选,因此使用扩展表

这意味着替换Sales扩展表上现有的任何文件管理器

销售扩展表包含“产品”表,因为产品和销售之间存在一对多关系

结果是,上下文转换设置的产品[Color]上的过滤器被删除

DEFINE
    MEASURE Sales[Average Sales Amount] =
        AVERAGEX ( Sales, 'Sales'[Quantity] * 'Sales'[Net Price] )
EVALUATE
ADDCOLUMNS (
    VALUES ( Product[Color] ),
    "Sales", CALCULATE(
        [Average Sales Amount],
        FILTER ( Sales, Sales[Quantity] > 3 )
    )
)