powerbi - DAX Measure 在过滤器表达式中使用来自不同相关表的多个列
问题描述
我需要有关 DAX 测量的帮助。我有 3 个表构建、动态、环境。它们都是相互关联的。我已经使用 Builds 表中的 Builds 切片器和包含以下列的表格图表创建了一个报告:
- BUILD[环境表]
- 目标构建[动态表]
- 状态[环境表]
- EnvironmentID[环境表]
现在我想创建一个度量来计算 In Progress Environments 的计数,其中 Build = selected build in slicer 或 target build = selected build in slicer。
有人可以帮助我正确的公式。谢谢!
我想出了以下公式:
InprogressEnvironments =
VAR SelectedSlicerValue = SELECTEDVALUE(Builds[Build])
RETURN
VAR CountEnvs =
CALCULATE (
DISTINCTCOUNT ( 'vwEnvironments'[EnvironmentID] ),
OR (
'vwEnvironments'[Build] = SelectedSlicerValue,
vwDynamic[TARGETBUILD] = SelectedSlicerValue
),
'vwEnvironments'[State] = "In Progress"
)
RETURN
CountEnvs
但是,此度量返回以下错误:表达式包含多个列,但在用作表过滤器表达式的 True/False 表达式中只能使用单个列。
解决方案
我不确定这两个表之间的关系是什么,但这样的事情可能会起作用:
InprogressEnvironments =
VAR SelectedSlicerValue =
SELECTEDVALUE ( Builds[Build] )
VAR CountEnvs =
CALCULATE (
DISTINCTCOUNT ( 'vwEnvironments'[EnvironmentID] ),
'vwEnvironments'[State] = "In Progress",
'vwEnvironments'[Build] = SelectedSlicerValue
|| RELATED ( 'vwDynamic'[TARGETBUILD] ) = SelectedSlicerValue
)
RETURN
CountEnvs
推荐阅读
- video-recording - 有没有办法在 Android 上的 InCallService.VideoCall 中记录表面?
- flutter - 参数类型'Future
' 不能分配给参数类型 'Future 功能()?' - html - 如何更改 ngx-daterangepicker-material 中的默认值?
- gitlab - 如何在 .gitlab-ci.yml 中清除 gitlab 中的工作区?
- c# - 我的 DynamoDB 查询引发错误 500 无法建立连接
- javascript - 防止页面加载中的焦点/模糊事件
- python - 使用 Pandas ExcelWriter 创建的 xlsx 文件需要修复
- java - AWS EMR 如何知道所有并行步骤是否已完成
- ios - 错误:选择器“setScreenName:screenClass:”没有已知的类方法
- javascript - 滚动 Bootstrap 时更改导航栏背景