DAX度量值优化求助:矩阵条件格式无法识别多值PTO场景
Power BI矩阵条件格式DAX修正方案
你的问题出在原度量值使用SELECTEDVALUE判断Type时,当同一员工同一周存在多条记录(比如Work和PTO同时存在),SELECTEDVALUE无法识别到PTO的存在(因为上下文有多个Type值)。以下是修正后的DAX度量值,解决多值判断问题:
Worked Hours by Pay Period Conditional Formatting = VAR TotalWorkHours = CALCULATE(SUM('Employees'[时长]), 'Employees'[Type] = "Work") VAR HasPTO = CALCULATE(COUNTROWS('Employees'), 'Employees'[Type] = "PTO") > 0 VAR IsUnder70 = TotalWorkHours < 70 RETURN SWITCH(TRUE(), IsUnder70 && HasPTO, "Yellow", IsUnder70, "Red", BLANK() )
关键修正点:
- 计算总工作时长:用
CALCULATE+SUM筛选Type=Work的记录,得到当前员工当周的实际工作时长总和 - 判断是否存在PTO:用
CALCULATE+COUNTROWS统计当前上下文(员工+周)下Type=PTO的记录数,只要大于0就判定存在PTO - 逻辑优先级:先判断"低于70且有PTO"返回黄色,再判断"仅低于70"返回红色,其余情况返回空(不应用格式)
这个度量值会正确识别员工C第1周的场景:总工作时长20<70,且存在PTO记录,因此返回黄色格式。
内容的提问来源于stack exchange,提问作者honey_badgerzz
相关产品推荐
相关产品推荐

