dax - 一种使用同一表中的度量过滤一组不同列的方法 - Tabular2017
问题描述
我需要对有假期的列 Fkey_Dim_Resource_ID 进行不同的计数。
我的表由五列组成:
- Resource_Allocated_Holiday_ID(主键)
- Fkey_Dim_Resource_ID
- Fkey_Dim_HolidayYear_ID
- Fkey_Dim_Company_ID
- Allocated_Holiday_Hrs_Qty
措施:
Allocated Holiday (Hrs):= Var X= SUM([Allocated_Holiday_Hrs_Qty])
Return if(X =0; BLANK();X)
下面的这个度量然后使用上面的,以及从另一个度量中度过的假期:
Remaining Holiday (Hrs):= Var X = 'HolidayEntry Numbers'[Allocated Holiday (Hrs)] - [#Holiday Hours]
Return if(X=0;BLANK();X)
而现在,我想要一个能够为我distinct count
提供Fkey_Dim_ResourceID where 'Remaining Holiday (hrs)' >0
.
我尝试了很多不同的东西,但似乎无法做到正确。
test:=
ADDCOLUMNS(
SUMMARIZE('HolidayEntry Numbers'
;'HolidayEntry Numbers'[Fkey_Dim_Company_ID]
;'HolidayEntry Numbers'[Fkey_Dim_Resource_ID];
'HolidayEntry Numbers'[Fkey_Dim_HolidayYear_Id]
)
;"RemainingHoliday"; sum( [Remaining Holiday (Hrs)])
)
我想要一个有假期的 Fkey_Dim_Resource_ID 的不同计数,这会考虑到上下文。提前致谢。
使用此措施:
test4 virker når ressourcen er med:=COUNTROWS (
FILTER (
ADDCOLUMNS (
VALUES ( 'HolidayEntry
Numbers'[Fkey_Dim_Resource_ID]);
"remholiday"; CALCULATE ( [Remaining Holiday
(Hrs)] )
);
[remholiday] > 0
)
)
我得到以下结果:
因此,该指标在资源上下文中有效,但在 Fkey_dim_holiday_Year_ID 上下文中无效。
感谢离子提前。
解决方案
Resources with remaining holiday hours =
COUNTROWS ( // counts rows in a table
FILTER ( // returns a table, filtering based on predicate
// below is unique values of the column in context, as a
// one-column table
VALUES ( 'HolidayEntry Numbers'[Fkey_Dim_Resource_ID] ),
[Remaining Holiday (hrs)] > 0 // keep rows meeting this criterion
)
)
作为风格问题,您应该将列名完全限定为'Table'[Column]
,并且永远不要完全限定度量引用,即不要以表名作为前缀。这符合我所知道的所有样式指南,并有助于确保您的代码是明确的(因为列和度量都在方括号中引用)。
推荐阅读
- javascript - 提交表单和 API 调用竞争后,Bootstrap Spinner 不会停止
- api - 我需要 alphaadvantage 的替代品来查看外汇相对于美元的价格
- ios - 在 Project Navigator 中单击 JSON 文件时 Xcode 冻结(并崩溃)
- numpy - 高维广播和
- c# - 如何在 Swift 中创建 SaS 令牌?
- javascript - 为什么这个变量没有在 javascript 中返回?
- html - 如何使用 Angular 11 预填充 html5 日期选择器
- python - 为什么我不能给我的 pygame 窗口命名或图标?
- r - R列出某个点后在全局环境中创建的所有变量
- python - 在pandas / python中使用group by function来获得总和,具有最大点和对应点的主题的最有效方法是什么