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