top of page

ISSUBTOTAL_ ROLLUP

Devuelve una columna en una expresión SUMMARIZE donde devuelve true si los valores de una fila es un subtotal, en caso contrario, devuelve false.


Esta función solo tiene un argumento que es nombre de columna de una tabla creada con SUMMARIZE.


Esta función solo podemos usarla entro de SUMMARIZE.


Sintaxis

ISSUBTOTAL(<columnName>)


Esta función se suele usar dentro de la función ROLLUP, que es la que vamos a ver ahora, esta función modifica el comportamiento de SUMMARIZE, se suele usar para obtener subtotales, creando nuevas columnas con la función ISSUBTOTAL.


Sintaxis

ROLLUP ( <groupBy_columnName> [, <groupBy_columnName> [, … ] ] )


  • groupBy_columnName, es el nombre de una columna existente, que se usara para crear grupos de resumen.


Veamos un ejemplo, tenemos cargado en Power BI el modelo que suelo usar en Excel.












Creamos una medida llamada totales, donde sumamos la columna total.




Creamos una nueva tabla, para ello, vamos a la pestaña herramientas de tablas, y, hacemos clic en nueva tabla.








Ponemos la función CALCULATETABLE, como argumento tabla, ponemos la función SUMMARIZE, como argumento tabla, ponemos la tabla ventas.





Como argumento groupBy_ColumnName1, ponemos la función ROLLUP, y, como argumento ponemos la columna centro.






Como argumento nombre1, entre comillas dobles, ponemos Subtotal, como argumento expresion1, ponemos la función ISSUBTOTAL, y, como argumento ponemos la columna centro.







Como argumento filtrar1 de CALCULETABLE, usamos la función TREATAS, como argumento expresión, entre llaves, y, entre comillas dobles, ponemos Metromar y Carrefour, como argumento columnNmame1, ponemos la columna de centro.


Cerramos paréntesis.


Vamos a resumir por la medida ventas, y, queremos agrupar por la columna centro, pero, también queremos el subtotal a nivel de centro, por eso, usamos la función ROLLUP, agregamos una nueva columna llamada subtotal, donde usamos la función ISSUBTOTAL sobre la columna centro, por lo tanto, el resultado contiene los centros Metromar, y, Carrefour, junto con una columna llamada subtotal, con false donde no es un subtotal, y, true donde lo es, y, una ultima columna con el total para cada centro.








Vamos a obtener una ultima fila donde centro es blanco, donde si es un subtotal, y, tenemos la suma del total de ambos centros.








Usamos ROLLUP para obtener las filas individuales, y, las filas de subtotal.


Podemos poner más de una expresión de ROLLUP, vayamos a la expresión de ROLLUP, después de ventas[Centro], ponemos coma, y, la columna de producto.






Cambiamos el nombre de Subtotal a Subtotal1.


Añadimos una nueva columna llamada Subtotal2, donde usamos la función ISSUBTOTAL, y, como argumento ponemos la columna producto.







Añadimos otro filtro TREATAS, filtramos por los productos de aspiradora, y, frigorifico.









Como resultado tenemos una columna llamada centro, donde aparecen los dos centros juntos, uno para cada producto, después, aparecen los dos centros solos.











Tenemos una columna llamada producto, donde tenemos el producto aspiradora para el centro metromar, y, Carrefour, tenemos el producto frigorifico para el centro metromar, y, aspiradora.











Tenemos una columna llamada subtotal1, donde tenemos false donde la cantidad de la columna total no es un subtotal, y, true donde si lo es, podemos observar que en la columna centro, al final tenemos una celda vacía, la cual en la columna subtotal1, aparece true, tenemos una columna llamada total, con la cantidad vendida de cada producto en cada centro, y, el total vendido por centro, pues, en la columna subtotal1, donde aparece true, tenemos la suma del total vendido por cada centro.












Tenemos otra columna llamada subtotal2, donde vemos tres celdas en blanco en la columna de provincia, donde en la columna subtotal2, aparece true, el primer true es la cantidad vendida por metromar de los productos aspiradora, y, frigorifico, el segundo true, es el total vendido por Carrefour de los productos aspiradora, y, frigorifico, y, el tercer true, es la suma de los dos true anteriores.














Miguel Angel Franco

 
 
 

Comentarios


© 2019 Miguel Ángel Franco García

bottom of page