Agregación de dos tablas con la misma estructura

Un escenario frecuente y sencillo de resolver es aquel en el que nos encontramos con dos tablas de idéntica estructura que deseamos agregar según algún campo. Veamos cómo sería. Suponemos que ya hemos obtenido los datos y tenemos cargadas en Power BI las dos tablas que, en este caso, contienen información de ventas:

Tabla 1Tabla 2

En este escenario queremos obtener el total de ventas por vendedor. Vamos a hacerlo en dos fases:

  1. Unión de las tablas anteriores
  2. Agregación de la tabla completa para mostrar las ventas (campo "Precio final") según el campo que identifica cada vendedor

Para el primer paso vamos a recurrir a la función UNION. Sin embargo, no vamos a unir las tablas directamente pues, como vemos en las imágenes anteriores, a pesar de tener la misma estructura (y, en el editor de consultas, aparecer con las columnas en el mismo orden) cuando se importan a Power BI las columnas no se muestran en el mismo orden (probablemente por un bug en el software que existe desde, al menos, finales de 2017). Es por ello que vamos a aplicar la función UNION a las tablas especificando a mano las columnas que nos interesan y el orden que nos interesa, para lo que recurriremos a la función SELECTCOLUMNS:

Ventas totales = 
    VAR
        Tabla1 = SELECTCOLUMNS(
            Ventas1;
            "Vendedor"; Ventas1[Id Vendedor];
            "PVP"; Ventas1[Precio final]
        )
    VAR
        Tabla2 = SELECTCOLUMNS(
            Ventas2;
            "Vendedor"; Ventas2[Id Vendedor];
            "PVP"; Ventas2[Precio final]
        )
    RETURN
        UNION(Tabla1; Tabla2)

Ventas totales

Hemos seleccionado apenas las columnas "Vendedor" y "Precio final" (con el nombre de "PVP") pero podríamos haber seleccionado otras columnas también.

Ahora, para el segundo paso, utilizamos la función SUMMARIZE para agregar la tabla anterior:

Ventas totales por vendedor = 
    SUMMARIZE(
        'Ventas totales';
        'Ventas totales'[Vendedor];
        "Ventas"; SUM('Ventas totales'[PVP]
        )
    )

Tabla de ventas agregada por vendedor
Funciones DAX involucradas
Dificultad
Intermedia
Enviado por admin el Mié, 10/04/2019 - 10:58