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
abdulmannan1991
Helper II
Helper II

Crear una columna utilizando valores de Parameter

Hola, Por favor, ayuda con el siguiente desafío:

Tarea: Quiero crear una columna en una tabla personalizada (mes 1 a 24) que debe tomar valores de un parámetro What-IF. Cualquier cambio en el valor de la segmentación de parámetros debe reflejarse en esa columna.

Desafío: Pude crear una columna, pero siempre toma el valor 'predeterminado' del parámetro (que definí como 2.000). Si cambio el valor en la segmentación de Paramter, la columna no elige el nuevo valor. Y la suma de los valores de columna también sigue siendo la misma (es decir, la suma de 24 veces 2.000 a 48.000).

Proceso: Este es el proceso paso a paso que seguí:

PASO 1: Creé una tabla "MyTable" con 2 columnas, Sr y Month (24 filas).

PASO 2: He creado un parámetro What-If "MyFees" con un valor predeterminado de 2.000.

PASO 3: Agregué una nueva columna a MyTable mediante la siguiente instrucción:

MyTotalFees á MyFees [Valor de MyFees]

Quería que esta nueva columna "MyTotalFees" tomara valores de Parameter (creado en el paso 2).

Pero sólo toma el valor 'predeterminado' de Paramter, que era 2.000.

PASO 4: Creé los objetos visuales para la verificación y me di cuenta de que la nueva columna (MyTotalFees) solo toma el valor predeterminado (2.000) incluso si cambio la segmentación de parámetros a cualquier otro valor (como, 1.000)... Y, por lo tanto, la suma de los valores de columna también permanece estática (es decir, 24 x 2.000 x 48.000).

Por favor, ayúdeme a crear esta tabla que debe tomar valores de un parámetro (cortador) dinámicamente.

He adjuntado las capturas de pantalla del PASO 1 al 4 también como referencia.

Gracias.

Imágenes:

Step 1.PNGPASO 1Step 2.PNGPASO 2Step 3.PNGPASO 3Step 4.PNGPASO 4

1 ACCEPTED SOLUTION
dax
Community Support
Community Support

Hola @abdulmannan1991 ,

Sí, como se mencionó @nandukrishnavs, la segmentación de datos no puede cambiar la columna calculada dinámicamente, por lo que necesita usar la medida para lograr este objetivo, podría intentar medir a continuación

total = IF(HASONEVALUE('Month table'[MONTH NAME]), SUM('MONTH'[MONTH]), SUM('MONTH'[MONTH])*24)

Saludos
Zoe Zhi

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

View solution in original post

3 REPLIES 3
dax
Community Support
Community Support

Hola @abdulmannan1991 ,

Sí, como se mencionó @nandukrishnavs, la segmentación de datos no puede cambiar la columna calculada dinámicamente, por lo que necesita usar la medida para lograr este objetivo, podría intentar medir a continuación

total = IF(HASONEVALUE('Month table'[MONTH NAME]), SUM('MONTH'[MONTH]), SUM('MONTH'[MONTH])*24)

Saludos
Zoe Zhi

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

Hola @dax

Gracias, el DAX funcionó!!

¿Puede ayudarme un poco más en la consecución del objetivo - como se describe a continuación:

He creado una tabla (MyTable) con 2 columnas, como se indica a continuación:

Número de mesMes
1Mes 1
2Mes 2
3Mes 3
4Mes 4

He creado un parámetro What-IF (slicer) para seleccionar el valor de gasto anual.

Luego, creé la siguiente medida para calcular el gasto mensual y para mostrar la suma total:

Monthly Spend = IF(HASONEVALUE(MyTable[Month]), SUM('Annual Spend'[Annual Spend])/12, (SUM('Annual Spend'[Annual Spend])/12)*MAX(MyTable[Month Number]))

De hecho, necesito aplicar un porcentaje de ahorro a cada mes por separado, y luego calcular los ahorros por mes y la suma de ahorros totales, así que creé 4 parámetros What-IF (rebanadas) para la selección de % de ahorro mensual. Y luego creé la siguiente medida para calcular el ahorro mensual y la suma de los ahorros totales:

Total Savings = 
IF(SUM(MyTable[Month Number])<=1, [Monthly Spend] * 'Savings % (Month 1)'[Savings % (Month 1) Value],
    IF(SUM(MyTable[Month Number])<=2, [Monthly Spend] * 'Savings % (Month 2)'[Savings % (Month 2) Value],
        IF(SUM(MyTable[Month Number])<=3, [Monthly Spend] * 'Savings % (Month 3)'[Savings % (Month 3) Value],
            IF(SUM(MyTable[Month Number])<=4, [Monthly Spend] * 'Savings % (Month 4)'[Savings % (Month 4) Value],
               
                ([Monthly Spend] * ('Savings % (Month 1)'[Savings % (Month 1) Value] + 'Savings % (Month 2)'[Savings % (Month 2) Value] + 'Savings % (Month 3)'[Savings % (Month 3) Value] + 'Savings % (Month 4)'[Savings % (Month 4) Value]))

))))

La medida anterior me da valores correctos para los ahorros mensuales, pero no da la suma total correcta!! Sé que el DAX es incorrecto en la declaración ELSE, pero no sé la respuesta correcta. Puede ser que la declaración elSE es incorrecta, o todo mi DAX o Proceso es incorrecto para el cálculo de la suma mensual de los ahorros y la suma total!!

Por favor, ¿puede ayudar con el DAX correcto? O puede ser sugerir una alternativa para todo el DAX / Medida / Proceso, etc.

Como referencia, el archivo base está disponible en el enlace de dropbox que se indica a continuación.

https://www.dropbox.com/t/US9uDK9V6srQCJwo

Se adjunta una instantánea del Pbix.

Por ejemplo, para el número de mes hasta 3 y el gasto anual de 1.200.000, y el porcentaje de ahorro para el mes 1, 2 y 3 siendo 20%, 10% y 5% respectivamente, los ahorros por mes (en la tabla) son correctos, es decir, 20.000, 10.000 y 5.000... Sin embargo, la suma total sale a ser 108.000 que es incorrecta (y lo ideal es ser 20.000 + 10.000 + 5.000 a 35.000).

Gracias.

Capture 1.PNG

nandukrishnavs
Super User
Super User

@abdulmannan1991: no podemos crear una columna calculada dinámica basada en el parámetro what-if. En su lugar, le recomendaría que cree una medida.

Consulte este enlacehttps://community.powerbi.com/t5/Desktop/Calculated-Column-Table-Change-Dynamically-According-to-Sli...



¿Respondí a tu pregunta? ¡Marca mi puesto como solución!
Apreciar con un kudos
🙂


Regards,
Nandu Krishna

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.