La función OPENINGBALANCEMONTH evalúa una expresión al comienzo del mes en el contexto actual.
OPENINGBALANCEMONTH(
expression,
dates
[, filter]
)
- expression: Expresión que devuelve un escalar.
- dates: Columna conteniendo fechas.
- filter: Argumento opcional. Filtro a aplicar al contexto actual.
La función OPENINGBALANCEMONTH devuelve un escalar.
El argumento dates puede ser una referencia a una columna conteniendo fechas, una expresión que devuelva una tabla con una única columna conteniendo fechas o una expresión booleana que defina una tabla con una única columna conteniendo fechas.
Aun cuando teóricamente la función evalúa la expresión pasada como argumento para el primer día del mes del contexto actual, en realidad se calcula para el final del último día del mes anterior. Esto quiere decir que la función devolverá el valor Blank si no existe un mes anterior para el contexto actual (véase ejemplo a continuación).
Si, dada una tabla con ventas, definimos la medida
Ventas = SUM(FactSales[SalesAmount])
...calculando el total de ventas, y la medida:
Ventas comienzo de mes = OPENINGBALANCEMONTH([Ventas], DimDate[Datekey])
...calculando el valor de ventas con el que comienza un mes, y llevamos estas dos medidas a una matriz, el resultado es el siguiente:
Puede observarse cómo, para cualquier día de febrero, la medida "Ventas comienzo de mes" contiene la cifra de ventas con la que se cerró el mes anterior. Sin embargo, al ser enero de 2007 el primer mes para el que se tienen datos, la medida devuelve un Blank para cualquier fecha de este mes.
Si, en el escenario anterior, llevamos a la cabecera de filas el mes y año, el resultado es el siguiente:
Aun cuando no pueda apreciarse correctamente, el valor de la medida "Ventas comienzo de mes" devuelve el valor de las ventas para el último día del mes anterior. La medida devuelve un Blank para el mes de enero de 2007 pues es el primero para el que se dispone de datos.