DAX联合值

DAX Joint value

我正在尝试在 DAX 中创建一个度量,以通过过滤二维 table 以具有相同的列值来查找事实 table 的联合值(总和)。

这是关系图

Users 中的每个部门都链接到 table Registret。他们正在为项目提供资源。 table Projects 正在获取资源。我想要完成的是一种可以找到部门使用其自身资源的数量的措施。所以我想如果我可以过滤 Registret[Users]Registre[Project] 其中 Users[Department] = Projects[Department] 我会得到值。

我想使用 Projects[Department] 作为基础。这样下面的table就会显示Projects中每个Department的内部部门注册量。

Department(Projects)   InternalRegistration
   A                           Value 
   B                           Value

到目前为止,我一直在尝试

CALCULATE(Registret[Registret]; FILTER(Users; Users[Department] IN ALLSELECTED(Projects[Departments])))

但是,如果我在切片器中从 table Projects 中挑出一个部门,这只会显示正确的值。是否有可能解决方案是 UsersProjects 之间的联合 table?

编辑:

顶部table显示UsersProjects之间Registret中的关节值矩阵。

编辑2:

我的 table 数据的图像。

请注意,过滤器箭头仅指向下方。这意味着选择 Projects[Departments] 不会过滤 Users[Departments],因为没有连接它们的过滤路径。您还缺少度量中的 SUM 函数。

尝试将您的衡量标准调整为以下内容:

= CALCULATE(SUM(Registret[Registret]);
      FILTER(Users; Users[Department] = SELECTEDVALUE(Projects[Departments])))

如果您在矩阵或 table 中工作,SELECTEDVALUE 应该从视觉中选择 row/column 过滤器上下文,而 ALLSELECTED 只选择从切片器或 report/page/visual 级过滤器向上过滤上下文。


您也可以使用 ...IN VALUES(... 代替 ...= SELECTEDVALUE(...

= CALCULATE(SUM(Registret[Registret]),
      FILTER(Users, Users[Department] IN VALUES(Projects[Department])))

这两个都应该产生以下结果: