在 PowerBI 的 DAX 中添加类别过滤器
Adding Category Filter in DAX of PowerBI
这可能是一个基本问题,但我有点卡住了。
我写了一系列 dax 来查找员工流失率。
它适用于以下公式。
Employees left / (Employee at start of year + Emp at end of year)/2 * 100.
它工作正常,只是在计算“剩余员工”的 dax 中,它查看所有离职者,而针对每个离职者,有一个名为“STATUS”的列检查员工离职的原因。可以是解雇,也可以是辞职,也可以是退休。
我想在 dax 中添加一个过滤器,以查找只针对“辞职”留下的员工
Employees who left =
VAR selectedDate = LASTDATE('Date'[Date])
VAR selectedDate12MonthsBefore = NEXTDAY(SAMEPERIODLASTYEAR(selectedDate))
RETURN
SUMX(NEW_Turnover_ADS,
IF(NEW_Turnover_ADS[LAST_WORKING_DATE]>=selectedDate12MonthsBefore && NEW_Turnover_ADS[LAST_WORKING_DATE]<=selectedDate, 1, 0)
)
我目前正在使用这个dax。
我尝试了以下方法,但它不起作用。
Employees who left filter =
VAR selectedDate = LASTDATE('Date'[Date])
VAR selectedDate12MonthsBefore = NEXTDAY(SAMEPERIODLASTYEAR(selectedDate))
RETURN
SUMX(FILTER(NEW_Turnover_ADS, NEW_Turnover_ADS[HR_STATUS] = 'RESIGNATION', NEW_Turnover_ADS,
IF(NEW_Turnover_ADS[LAST_WORKING_DATE]>=selectedDate12MonthsBefore && NEW_Turnover_ADS[LAST_WORKING_DATE]<=selectedDate, 1, 0)
) )))))
如有任何帮助,我们将不胜感激。
请注意,我只需要在上面的 dax 中按类别添加过滤器 - 其余工作正常。
除了语法错误外,您的尝试似乎是合理的。
试试这个:
Employees who left =
VAR selectedDate = LASTDATE ( 'Date'[Date] )
VAR selectedDate12MonthsBefore = NEXTDAY ( SAMEPERIODLASTYEAR ( selectedDate ) )
RETURN
SUMX (
FILTER (
NEW_Turnover_ADS,
NEW_Turnover_ADS[HR_STATUS] = "RESIGNATION"
),
IF (
NEW_Turnover_ADS[LAST_WORKING_DATE] >= selectedDate12MonthsBefore
&& NEW_Turnover_ADS[LAST_WORKING_DATE] <= selectedDate,
1,
0
)
)
这可能是一个基本问题,但我有点卡住了。
我写了一系列 dax 来查找员工流失率。
它适用于以下公式。
Employees left / (Employee at start of year + Emp at end of year)/2 * 100.
它工作正常,只是在计算“剩余员工”的 dax 中,它查看所有离职者,而针对每个离职者,有一个名为“STATUS”的列检查员工离职的原因。可以是解雇,也可以是辞职,也可以是退休。
我想在 dax 中添加一个过滤器,以查找只针对“辞职”留下的员工
Employees who left =
VAR selectedDate = LASTDATE('Date'[Date])
VAR selectedDate12MonthsBefore = NEXTDAY(SAMEPERIODLASTYEAR(selectedDate))
RETURN
SUMX(NEW_Turnover_ADS,
IF(NEW_Turnover_ADS[LAST_WORKING_DATE]>=selectedDate12MonthsBefore && NEW_Turnover_ADS[LAST_WORKING_DATE]<=selectedDate, 1, 0)
)
我目前正在使用这个dax。
我尝试了以下方法,但它不起作用。
Employees who left filter =
VAR selectedDate = LASTDATE('Date'[Date])
VAR selectedDate12MonthsBefore = NEXTDAY(SAMEPERIODLASTYEAR(selectedDate))
RETURN
SUMX(FILTER(NEW_Turnover_ADS, NEW_Turnover_ADS[HR_STATUS] = 'RESIGNATION', NEW_Turnover_ADS,
IF(NEW_Turnover_ADS[LAST_WORKING_DATE]>=selectedDate12MonthsBefore && NEW_Turnover_ADS[LAST_WORKING_DATE]<=selectedDate, 1, 0)
) )))))
如有任何帮助,我们将不胜感激。
请注意,我只需要在上面的 dax 中按类别添加过滤器 - 其余工作正常。
除了语法错误外,您的尝试似乎是合理的。
试试这个:
Employees who left =
VAR selectedDate = LASTDATE ( 'Date'[Date] )
VAR selectedDate12MonthsBefore = NEXTDAY ( SAMEPERIODLASTYEAR ( selectedDate ) )
RETURN
SUMX (
FILTER (
NEW_Turnover_ADS,
NEW_Turnover_ADS[HR_STATUS] = "RESIGNATION"
),
IF (
NEW_Turnover_ADS[LAST_WORKING_DATE] >= selectedDate12MonthsBefore
&& NEW_Turnover_ADS[LAST_WORKING_DATE] <= selectedDate,
1,
0
)
)