DAX 如何在测量中忽略某些切片器?

DAX how to Ignore certain slicers in measure?

我有一个 table 如下所示:

BU  Value   Date    Measure Agg_Lvl_1   Agg_Lvl_2   Agg_Lvl_3
AA  10  01/01/2021  Sale    Firm    COO A
AB  20  01/04/2021  Sale    Firm    Non-COO A
AC  32  01/05/2021  Sale    Firm    COO A
BA  32  01/01/2021  Sale    Firm    Non-COO B
BB  43  01/04/2021  Sale    Firm    Non-COO B
BC  19  01/08/2021  Sale    Firm    Non-COO B
CA  11  01/11/2021  Sale    Firm    Non-COO C
CB  16  01/12/2021  Sale    Firm    Non-COO C
CC  18  01/13/2021  Sale    Firm    COO C
D   18  01/01/2021  Sale    Ext Non-CIO D
AA  10  01/01/2021  non-Sale    Ext Non-CIO A
AB  20  01/04/2021  non-Sale    Firm    Non-CIO A

我需要按期间计算每个 BU 对 Firm Sale 的贡献: contribution = Sum(Table(Value) where Measure ='Sale' & BU ='slicer select') / Sum(Table(Value) where Measure ='Sale' & BU ='Firm' 此“贡献”措施也应对应于日期切片器

我尝试了不同的 DAX 方法,我得到的只是 1 的贡献(我认为 slicer/filter 设置不正确)。有人帮忙吗?

例如1/1/2021 - 1/4/2021之间的AA贡献 = (10+20)/ (10+20+32+18) = 12.5%

你可以尝试下图的ALLEXCEPT函数-

contribution = 
CALCULATE(
    SUM(Table_name[value]),
    FILTER(
        ALLEXCEPT(Table_name,Table_name[Date],Table_name[BU]),
        Table_name[measure] = "Sale"
    )
)
/
CALCULATE(
    SUM(Table_name[value]),
    FILTER(
        ALLEXCEPT(Table_name,Table_name[Date]),
        Table_name[measure] = "Sale"
            && Table_name[BU] = "Firm"
    )
)