Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Múltiples cálculos condicionales con archivo de Excel compartido

Hola a todos


Tengo un informe de ventas (de una conexión en vivo) que necesito dividir entre 2 canales de distribución. Sé cuál es la división para todos ellos (columna condicional usada para eso) excepto 2 clientes.

Para esos 2 clientes obtengo un % con división de canal de distribución que cambia cada mes.

Esta es la muestra de la división %:

eComm

año

Mes

tienda 1

tienda 2

2019

1

9.6%

32.6%

2019

2

11.9%

42.7%

2019

3

12.5%

33.6%

Lo que quiero hacer es calcular para esos 2 clientes el % dividido para cada año y mes, y luego agregar cada porción al grupo correcto (eComm/Stores). Por ejemplo, la tienda 1 en 2019-01 tiene 9,6% eComm por lo que el resto (90,4%) debe agregarse al grupo de tiendas. El usuario final tendrá sólo 2 opciones para elegir (online/tiendas).

¿Cuál será la mejor manera de hacer algo así? Conecté un Excel compartido para que los usuarios puedan actualizar el % una vez al mes por lo que el cálculo de división debe derivarse de ese archivo (tal vez con una instrucción If y una búsqueda?)


Muchas gracias

1 ACCEPTED SOLUTION
Icey
Community Support
Community Support

Hola @ShmuelASHER ,

Según mi experiencia, cuando desactivamos el error notificado por Power BI Desktop, el archivo se abrirá normalmente. ¿Cuál es tu versión?

Además, permítanme explicar lo que hice en el archivo .pbix.

1. Mesas orginales.

Mesa:

Fecha Cliente Artículos Importe de ventas cantidad de unidades Canal
1/1/2020 123 A 100 10 Tienda
1/2/2020 456 B 100 10 Ambos
1/4/2020 789 C 100 10 Ambos
1/9/2020 1011 D 100 10 en línea

eComm:

año Mes tienda 1 tienda 2
2020 1 9.60% 32.60%
2020 2 11.90% 42.70%
2020 3 12.50% 33.60%

2. Cree la tabla "Channel" de anotehr mediante "Enter data".

Channel_
Tienda
en línea

3. Cree una columna "YearMonth" en la tabla "eComm".

YearMonth = [Year] & FORMAT ( [Month], "00" )

4. Cree una relación entre la tabla "eComm" y la tabla "Tabla".

relation.JPG

5. Cree una medida.

Measure = 
VAR t =
    ADDCOLUMNS (
        FILTER (
            CROSSJOIN ( 'Table', Channel ),
            [Channel] = [Channel_]
                || [Channel] = "Both"
        ),
        "Sales_",
            IF (
                [Channel] = "Both"
                    && [Channel_] = "Store",
                [Sales amount] * LOOKUPVALUE ( eComm[store 1], eComm[YearMonth], [YearMonth] ),
                IF (
                    [Channel] = "Both"
                        && [Channel_] = "Online",
                    [Sales amount]
                        * ( 1 - LOOKUPVALUE ( eComm[store 1], eComm[YearMonth], [YearMonth] ) ),
                    [Sales amount]
                )
            )
    )
RETURN
    SUMX ( t, [Sales_] )

Entonces, obtendrás lo que quieres.

mea.JPG

Saludos

Icey

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a otros miembros a encontrarlo más rápido.

View solution in original post

6 REPLIES 6
Anonymous
Not applicable

Hola @Icey ,

Gracias, pero no puedo abrir el archivo porque dice que necesito una versión más reciente de PBI (no puedo actualizar porque mis restricciones de trabajo).


¿Puede guardarlo como la versión anterior por favor?


Muchas gracias

Icey
Community Support
Community Support

Hola @ShmuelASHER ,

Según mi experiencia, cuando desactivamos el error notificado por Power BI Desktop, el archivo se abrirá normalmente. ¿Cuál es tu versión?

Además, permítanme explicar lo que hice en el archivo .pbix.

1. Mesas orginales.

Mesa:

Fecha Cliente Artículos Importe de ventas cantidad de unidades Canal
1/1/2020 123 A 100 10 Tienda
1/2/2020 456 B 100 10 Ambos
1/4/2020 789 C 100 10 Ambos
1/9/2020 1011 D 100 10 en línea

eComm:

año Mes tienda 1 tienda 2
2020 1 9.60% 32.60%
2020 2 11.90% 42.70%
2020 3 12.50% 33.60%

2. Cree la tabla "Channel" de anotehr mediante "Enter data".

Channel_
Tienda
en línea

3. Cree una columna "YearMonth" en la tabla "eComm".

YearMonth = [Year] & FORMAT ( [Month], "00" )

4. Cree una relación entre la tabla "eComm" y la tabla "Tabla".

relation.JPG

5. Cree una medida.

Measure = 
VAR t =
    ADDCOLUMNS (
        FILTER (
            CROSSJOIN ( 'Table', Channel ),
            [Channel] = [Channel_]
                || [Channel] = "Both"
        ),
        "Sales_",
            IF (
                [Channel] = "Both"
                    && [Channel_] = "Store",
                [Sales amount] * LOOKUPVALUE ( eComm[store 1], eComm[YearMonth], [YearMonth] ),
                IF (
                    [Channel] = "Both"
                        && [Channel_] = "Online",
                    [Sales amount]
                        * ( 1 - LOOKUPVALUE ( eComm[store 1], eComm[YearMonth], [YearMonth] ) ),
                    [Sales amount]
                )
            )
    )
RETURN
    SUMX ( t, [Sales_] )

Entonces, obtendrás lo que quieres.

mea.JPG

Saludos

Icey

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a otros miembros a encontrarlo más rápido.

Anonymous
Not applicable

Gracias @Icey !

Icey
Community Support
Community Support

Hola @ShmuelASHER ,

Compruebe si el archivo .pbix adjunto podría cumplir con sus requisitos.

store.JPG

Saludos

Icey

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a otros miembros a encontrarlo más rápido.

Icey
Community Support
Community Support

Hola @ShmuelASHER ,

¿Están incluidas esas dos opciones(online/stores)en sus datos?

¿Cuál es la estructura de sus datos?

¿Puede compartir algunos datos de muestra con la misma estructura que los datos reales?

Saludos

Icey

Anonymous
Not applicable

Hola @Icey ,

El canal no está incluyedo en mis datos sin procesar, conozco la división para cada cliente excepto 2 que son ambos canales. Creé una columna con regla condicional para agregar la división de canales. Los datos tienen este aspecto:

Fecha

Cliente

Artículos

Importe de ventas

cantidad de unidades

Canal

01/01/2020

123

A

100

10

Tienda

01/02/2020

456

B

100

10

Ambos

01/04/2020

789

C

100

10

Ambos

01/09/2020

1011

D

100

10

en línea

Quiero crear una regla que si el cliente es 456/789, entonces el importe de ventas y unidades se multiplica por un % que me dará la porción en línea para ese cliente. Entonces quiero sumar esa parte en el grupo en línea y lo mismo va para la porción de la tienda. Tengo 2 clientes que se construyen así.

El reto es que tengo una división % diferente para esos 2 clientes que cambia cada mes. Creé otra tabla conectada a un Excel compartido, así que cada mes solo necesito conectar el % y PBI actualizará esa parte para esos 2 clientes. Cada mes en esa tabla tiene un identificador único (mes y año – es decir, 01-2020) que se puede utilizar con un BUSCAR (si ese es el camino a seguir).

Lo que busco es la mejor solución para crear la regla de división para ambos clientes, basada en un %de cambio mensual.

¿Debe hacerse en el editor PQ (y si es así - ¿cómo?) o tal vez como una columna calculada en el propio PBI Desktop?

¿Cuál será la mejor manera de resolver esto?

¡Muchas gracias!

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.