按二维组合过滤

Filter by two dimension combinations

我的(高度简化的)数据模型包含:

我还有一个 table 'Country' 和 'Process' 的组合,我想在上面过滤我的数据:

Country     Process      Country-Process
= = = = = = = = = = = = = = = = = = = =
France      process 1    France process 1
France      process 2    France process 2
Australia   process 1    Australia process 1
Australia   process 3    Australia process 3
USA         process 2    USA process 2
USA         process 3    USA process 3

目标是过滤我的 FTE,仅显示这些国家/地区流程组合的 FTE。但是,不可能让组合 table 通过关系过滤国家和进程 table。

如果我过滤国家/地区,我将获得这些国家/地区的所有流程。如果我过滤流程,我会得到这些流程的所有国家/地区。如果我过滤这些国家(有更多)和这些流程(有更多),我会得到所有这些国家的所有这些流程。但我只想要列出的组合。

我已经成功地在虚拟 table 上使用 SUMX 进行测量,该虚拟 table 仅包含列出的组合(在 DAX Studio 中有效),但实体关系不知何故丢失,所有国家/地区都显示了汇总值每个进程。

测量设置如下:

SUMX(
    FILTER(
        CROSSJOIN(
            ADDCOLUMS(
                CROSSJOIN(VALUES(Country[country]), VALUES(Process[process]) ),
                "Country_Process", Country[country] & " " & Process[process]
            ),
            VALUES(Combination[Country-Process]
        ),
        [Country_Process] = Combinations[Country-Process]
    ),
    [FTE]
)

非常感谢您的帮助!

假设您的 table 和关系如下所示:

组合

Country Process
France Process 1
France Process 2
Australia Process 1
Australia Process 3
USA Process 2
USA Process 3

国家

Country
France
Australia
USA

进程

Process
Process 1
Process 2
Process 3

全职

ID Country Process
15 Australia Process 3
3 Australia Process 1
5 Australia Process 3
11 Australia Process 3
13 France Process 3
14 France Process 2
12 France Process 1
1 France Process 1
7 France Process 3
8 France Process 2
2 USA Process 3
4 USA Process 3
6 USA Process 1
9 USA Process 3
10 USA Process 1

关系

DAX 计算:

您可以使用TREATAS创建虚拟关系。度量可以是 table.

中的可视列或筛选器
Filter FTE = 
        CALCULATE (
            COUNTROWS ( FTE ),
            TREATAS (
                SUMMARIZE ( Combinations, Combinations[Country], Combinations[Process] ),
                FTE[Country],
                FTE[Process]
            )
        )
    

输出