附1:日期时间函数
附2:时间智能函数
实践#1 -验证PREVIOUSMONTH是否受ALL的影响
“ 当使用时间智能函数时,公式都更改了日期表的筛选上下文,从而得到不同于初始筛选上下文的计值结果。在使用支持报表钻取操作的客户端(例如 Excel 中的数据透视表)时,你可以观察到意料之外的结果:明细数据只受到来自外部的筛选上下文的影响。原因是钻取操作由 MDX 执行,它不考虑度量值内部定义的筛选上下文,而只接受由透视表的行、列、过滤器和切片器定义的筛选上下文环境。”
从结果来看,Previousmonth 没受 ALL('Date') 的影响
实践#2 - 无日期切片器,计算当前Season的销售量
本季度 = //获取当前月份 VAR cur_month = FORMAT(TODAY(),"YYYYMM") //获取当前季度 VAR Cur_Season = CALCULATE( SELECTEDVALUE(D_DATE[Season]), 'D_DATE'[MONTH2] = cur_month) Return //求当前季度的总销售量 CALCULATE(SUM(F_SALES[SALES_QTY]),D_DATE[Season] = cur_season)