需求

根据切片器选择结果显示当月销售额和当前所选范围内上月销售额与环比。

实现

在这里插入图片描述

年月顺序 yearmonth_sort = var v_min_year = minx('日期表','日期表'[year])
							var v_mutl = '日期表'[year] - v_min_year
							return 12*v_mutl + '日期表'[month_no]
所选的上月销售额 = 
//首先获取当前上下文的月份
var v_current_mth = selectedvalue('日期表'[yearmonth_sort])
//然后获取当前月份对应的所选的上月
var v_prior_mth = calculate(max('日期表'[yearmonth_sort]),
											'日期表'[yearmonth_sort]<vcurrent_mth,
											allselected('日期表'[month]))
											//allselected 这里必须要用month列,而不是month sort列,因为切片器中选择的是month
//计算所选上个月的销售额
var v_sales_amt = calculate(
											sum('订单表'[销售额]),'日期表'[yearmonth_sort]=v_prior_mth,all('日期表')
											)  
											//如果不设置all日期表,那么在视觉对象上下文中,由于本身取到了日期表的month字段,交叉取值后会导致该返回值错误
return v_sales_amt
所选月环比 =divide( [当月销售额]-[所选上月销售额],[所选上月销售额])

在这里插入图片描述

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐