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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Ignorar la relación en el caso único del switch

Hola

Estoy tratando de aplicar diferentes criterios de filtrado dependiendo de la división de ventas, gracias a amitchandak y las funciones SUMX/SWITCH puedo aplicar según lo previsto, pero una división genera un problema.

Mi modelo contiene tres tablas de la siguiente manera:

DIVISIÓNDIVISION_NAME
1B2B
2B2C
3TIENDA

VENDEDORDIVISION_IDSALESMAN_NAME
11John
22Pedro
31Claire

TOTAL_PRICESALESMAN_IDIN_SHOPARTÍCULOAB
10001YA11
20001NB22
15002YC22
25003YD12
1000-1YE11

Los ID están vinculados en una relación de uno a varios, por lo que puedo graficar las ventas por división y por vendedor usando este código.

MTD = SUMX(
   VALUES(DIVISIONS[DIVISION]), 
   SWITCH(
      DIVISIONS[DIVISION], 
      1, CALCULATE(SUM(SALES[TOTAL_PRICE]),
         FILTER(SALES, SALES[A] = 1)),
      2, CALCULATE(SUM(SALES[TOTAL_PRICE]),
         FILTER(SALES, SALES[A] = 2 && SALES[B] = 2)),
      3, CALCULATE(SUM(SALES[TOTAL_PRICE]),
         FILTER(SALES, SALES[IN_SHOP] = "Y"),
      0
   )
)

La división SHOP puede ser generada por división B2B y B2C y también en la propia, pero ambas divisiones se filtran cuando se grafican vs división y vendedor, también se intentó deshabilitar la relación y agregar USERELATIONSHIP en el caso 1 y 2 pero genera un valor constante que se agrega a todas las divisiones, ¿hay alguna forma de deshabilitar la relación solo en el caso 3?

El comportamiento previsto es obtener lo siguiente.

DIVISIÓNVENTAS
B2B3500
B2C1500
TIENDA6000

Gracias en ventaja

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

@orlando9427 , parece que está creando una columna, no una medida.

Puede utilizar la combinación cruzada con None para deshabilitar la unión

Crear una medida

MTD = SUMX(
VALORES(DIVISIONES[DIVISIÓN]),
INTERRUPTOR(
Max(DIVISIONES[DIVISIÓN]),
1, CALCULAR(SUMA(VENTAS[TOTAL_PRICE]),
FILTRO(VENTAS, VENTAS[A] = 1)),
2, CALCULAR(SUMA(VENTAS[TOTAL_PRICE]),
FILTRO(VENTAS, VENTAS[A] = 2 && VENTAS[B] = 2)),
3, CALCULAR(SUMA(VENTAS[TOTAL_PRICE]),
FILTER(SALES, SALES[IN_SHOP] = "Y"),
0
)
)

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

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.