Power BI中CALCULATE搭配FILTER、ALLSELECTED时日期筛选器失效问题
解决方案
根因说明
原有度量值的问题出在ALLSELECTED作用于整张事实表,当仅使用日期筛选器时,FILTER迭代的表上下文与MAX函数的计算上下文发生冲突,导致没有匹配的计算结果,视觉对象显示空白。
修复后的度量值
直接替换现有度量值即可,该写法仅对日期年月列使用ALLSELECTED,既保留了页面所有其他筛选器(如Carrier、Agent等)的筛选效果,也能实现任意时间范围内的连续累计,不会出现筛选日期后空白的问题:
QuoteRequestId 按CreatedDtMonth累计值 = VAR 当前上下文最大年月 = MAX('vw_rpt_AllSubmissions'[CreatedDtYearMonth]) RETURN CALCULATE ( COUNT('vw_rpt_AllSubmissions'[QuoteRequestId]), 'vw_rpt_AllSubmissions'[CreatedDtYearMonth] <= 当前上下文最大年月, ALLSELECTED('vw_rpt_AllSubmissions'[CreatedDtYearMonth]) )
最佳实践建议
如果后续需要经常做时间维度的计算,建议创建独立的日期维度表,与事实表的CreatedDt字段建立一对多关联,所有日期筛选器统一使用日期表的字段,时间智能计算的兼容性和稳定性会更高。
内容的提问来源于stack exchange,提问作者Duran Roberts
相关产品推荐
相关产品推荐

