Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago

DAX SWITCH STATEMENT no funciona correctamente

Hola, sólo estoy tratando de hacer un mesure mediante el uso de la instrucción SWITCH. pero no está funcionando correctamente. No sé por qué. SWITCH.PNG Aquí está mi código. Siento que hay algo mal con la instrucción SWITCH porque cuando probé el código a continuación en el que excluí la instrucción SWITCH

Without SWITCH.PNG

funciona. Tengo un número correcto que es -10.64%. Con SWITCH, tengo -100% que no es correcto. También adjuntaré la tabla debajo que creé yo mismo.

table2.PNG

Hay otra tabla llamada "FI OperationsStatementData", pero es directquery desde SQL Server, por lo que no puedo adjuntar aquí. ¿Alguien puede responder a mi pregunta? Apreciaré cualquier ayuda.

10 Replies

  • usar daxformatter.com para poner su fórmula en un formato legible, y tal vez averiguar dónde se descompone la lógica.

    • Anonymous's avatar
      Anonymous
      Not applicable

      Aquí tienes.SWITCH2.PNG

      • lbendlin's avatar
        lbendlin
        Icon for Super User rankSuper User

        así es como SWITCH() se supone que funciona para su escenario (también hay otras opciones)

        SWITCH( TRUE(),<primera prueba>,"primer resultado",<segunda prueba>,"segundo resultado",...,"resultado alternativo")

  • v-yingjl's avatar
    v-yingjl
    Icon for Community Support rankCommunity Support

    Hola @woo92seok ,

    Dado que no está seguro de cómo era todo el conjunto de datos, una razón que podría causar este problema es que el tipo de datos de estas dos medidas no es el mismo, compruebe si el tipo de datos de la instrucción switch y la medida anterior son diferentes.

    Dado que la lógica de cálculo no cambia, el resultado no debe ser diferente debido a una instrucción switch.

    O puede considerar compartir un archivo .pbix ficticio para una discusión adicional para determinar la razón específica si el tipo de datos es el mismo.

    Best Looks,
    Yingjie Li

    Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hola, creo que el tipo de datos es el mismo, así que adjunto aquí mi archivo pbix ficticio. Básicamente, estoy tratando de hacer una medida que calcula (% real / Presupuesto %) - 1. "Nómina y Beneficios" y "Gasto Indirecto" obtuvieron el porcentaje correcto, pero "Combustibles" no obtuvo un porcentaje correcto que es -10/64%. También adjunto una captura de pantalla para que entiendas mejor lo que estoy diciendo.

      SWITCH4.PNGhttps://drive.google.com/file/d/1hSHiM-QZ9g4arOpc7wV0a3Iu7nGCeWT5/view?usp=sharing

      p.s. El ingreso de la construcción es un número negativo porque está condiserado como crédito, todos los demás débito.

      • v-yingjl's avatar
        v-yingjl
        Icon for Community Support rankCommunity Support

        Hola @woo92seok ,

        Basado en mi prueba y re-investigación, he añadido un filtro en su[Ingresos de construcción (Presupuesto)] medida y ahora puede mostrar el resultado correcto:

        Construction Income (Budget) = CALCULATE(SUM('Budget For Meters'[Budget]), FILTER(ALL('Budget For Meters'),'Budget For Meters'[Description] = "1.Construction Income"))

        fliter.png

        Adjunto el archivo ficticio modificado, por favor compruébalo: Dummy.pbix

        Best Looks,
        Yingjie Li

        Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.