Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

EXPOSICION TOP N

Hola

Tengo esta situación:

CustomeridClienteGroupidCUSTOMER_GROUPExposición
001A1001100
002B2002100
003C3003800
004D1001200
005E1001500
006F2002350
007G200250

Necesito obtener el valor para los 2 mejores grupos.

Yo uso esta masure:

Top2_exposure por grupos de grupos de cálculo([EXPOSURE],
TOPN(2,CLIENTES,CLIENTES[CUSTOMER_GROUP],DESC))

Pero la medida devuelve la exposición en los 2 principales clientes, no en el grupo. ¿Cómo puedo elegir la columna que se va a filtrar?

Resultado esperado: Top2_exposure por grupos 1 600$ no 1300$

CUSTOMER_GROUPExposición
1800
2500
3800

¡Muchas gracias!

  • hola @ANM_97

    Simplemente ajuste la fórmula como se muestra a continuación:

    Top2_exposure by groups = CALCULATE(SUM(CUSTOMERS[EXPOSURE]),
                                                            TOPN(2,VALUES(CUSTOMERS[CUSTOMER_GROUP]),CALCULATE(SUM(CUSTOMERS[EXPOSURE])),DESC))

    Resultado:

    1.JPG

    o probar esta lógica de la fórmula

    Top2_exposure by groups 2 = 
    var _table=TOPN(2,ALLSELECTED(CUSTOMERS[CUSTOMER_GROUP]),CALCULATE(SUM(CUSTOMERS[EXPOSURE])),DESC) return
    CALCULATE(SUM(CUSTOMERS[EXPOSURE]),  FILTER(CUSTOMERS,  CUSTOMERS[CUSTOMER_GROUP] in _table))

    Resultado:

    2.JPG

    saludos

    Lin

5 Replies

    • Anonymous's avatar
      Anonymous
      Not applicable

      @parry2k No, el resultado correcto es: 1600.

      Resultado esperado: Top2_exposure por grupos 1 600$ no 1300$

      CUSTOMER_GROUPExposición
      1800
      3800
      2500

      SUM(Top2_exposure por grupos) a 1600

  • v-lili6-msft's avatar
    v-lili6-msft
    Icon for Community Support rankCommunity Support

    hola @ANM_97

    Simplemente ajuste la fórmula como se muestra a continuación:

    Top2_exposure by groups = CALCULATE(SUM(CUSTOMERS[EXPOSURE]),
                                                            TOPN(2,VALUES(CUSTOMERS[CUSTOMER_GROUP]),CALCULATE(SUM(CUSTOMERS[EXPOSURE])),DESC))

    Resultado:

    1.JPG

    o probar esta lógica de la fórmula

    Top2_exposure by groups 2 = 
    var _table=TOPN(2,ALLSELECTED(CUSTOMERS[CUSTOMER_GROUP]),CALCULATE(SUM(CUSTOMERS[EXPOSURE])),DESC) return
    CALCULATE(SUM(CUSTOMERS[EXPOSURE]),  FILTER(CUSTOMERS,  CUSTOMERS[CUSTOMER_GROUP] in _table))

    Resultado:

    2.JPG

    saludos

    Lin

    • Anonymous's avatar
      Anonymous
      Not applicable

      @v-lili6-msft ¡Funciona!

      ¿Cómo introduzco la condición "no NULL" para CUSTOMER_GROUPS?

      Tengo esta situación en mi proyecto:

      CustomeridClienteGroupidCUSTOMER_GROUPExposición
      2000
      1A1001100
      2B2002100
      3C3003800
      4D1001200
      5E1001500
      6F2002350
      7G200250

      Esto hace que el resultado 2800$.

      ¡¡Gracias!!