函数周期表丨时间智能丨值丨 OPENINGBALANCE 系列
OPENINGBALANCEMONTH函数
OPENINGBALANCEQUARTER函数
OPENINGBALANCEYEAR函数
OPENINGBALANCE系列函数一共包含三个函数:OPENINGBALANCEMONTH函数,OPENINGBALANCEQUARTER函数,OPENINGBALANCEYEAR函数。
这三个函数隶属于“值函数”,与之算是对应的函数系列有:CLOSINGBALANCE函数系列和ENDOF函数系列。但是用法上又有所区别。
CLOSINGBALANCE函数与ENDOF函数都可以计算期末库存余额系列,但是前者自带上下文转换,而后者需要借助于CALCULATE进行上下文转换。
OPENINGBALANCE函数的内部运算有点类似于CLOSINGBALANCE函数,自带上下文转换。忽略一些语法,单从结果上来看,与二者的用途是相对应的。而且,部分结果上看来这三个函数的结果是一致的,但是其意义是完全不同的。
用途:计算月/季度/年的期初库存。
语法
语法1:
DAX=
OPENINGBALANCEMONTH(<表达式>,<日期>[,<筛选器>])
语法2:
DAX=
OPENINGBALANCEQUARTER(<表达式>,<日期>[,<筛选器>])
语法3:
DAX=
OPENINGBALANCEYEAR(<表达式>,<日期>[,<筛选器>][,<结束日期>])
参数
表达式:用来计算数据的表达式。
日期:包含日期的列。
筛选器:(可选项)应用于当前上下文的筛选条件。
结束日期:(可选项)此项只有年度函数有,前两者没有,用来定义年度结束日期。
返回结果
一个具体的数值,表示当前上下文的月初/季度初/年初的计算结果。
例子
模拟数据:
例子1:
OPENINGBALANCEMONTH例子 =
OPENINGBALANCEMONTH ( SUM ( '销售表'[购买数量] ), '销售表'[订单日期] )
结果:
为月份匹配上个月期末的销售数据,即期初数据。
可能有的小伙伴说了,这不与CLOSINGBALANCE函数系列和ENDOF函数系列的结果差不多么?别急,继续输入代码:
对比代码1:
CLOSINGBALANCEMONTH例子 =
CLOSINGBALANCEMONTH ( SUM ( '销售表'[购买数量] ), '销售表'[订单日期] )
对比代码2:
ENDOFMONTH例子 =
CALCULATE ( SUM ( '销售表'[购买数量] ), ENDOFMONTH ( '销售表'[订单日期] ) )
对比结果:
对比后两者,后两者的作用是为每个月的每日匹配期末的数值。也就是1月1日对应的匹配数值是1月31的,以此类推。
而前者,是为次月匹配上个月的月末数值,即为本周期期初的数值。
小伙伴们,搞懂了没?这是前者与后面二者的区别。
例子2:
OPENINGBALANCEQUARTER例子 =
OPENINGBALANCEQUARTER ( SUM ( '销售表'[购买数量] ), '销售表'[订单日期] )
结果:
为季度匹配上一个季度的期末值,即本季度期初值。
例子3:
OPENINGBALANCEYEAR例子 =
OPENINGBALANCEYEAR ( SUM ( '销售表'[购买数量] ), '销售表'[订单日期] )
结果:
为年度匹配上一年度的期末数值,即本年度的期初数值。
好啦,本期就到这里了。
小伙伴们,GET了么?
白茶会不定期的分享一些函数卡片哦。
(文件在知识星球[PowerBI丨需求圈])
这里是白茶,一个PowerBI的初学者。
下面这个知识星球是针对有实际需求的小伙伴,有需要的请加入下面的知识星球。
(这个星球里面有白茶之前所有的案例文件。)
请在PC端查看,有部分图片无法在移动端显示。
PowerBI丨白茶
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)