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
Syndicate_Admin
Administrator
Administrator

Si... A continuación, utilice esta fórmula

Quiero crear una fórmula DAX donde tengo una columna con 0's en 1's.

Cuando la columna dice 0 necesita calcular una fórmula para esta fila, por ejemplo:

DATEDIFF(pedidos[Fixedtime],orders[finalfixedtime],second).

Y cuando la columna dice 1 necesita calcular una fórmula diferente para esta fila, por ejemplo:
DATEDIFF(orders[Fixedtime],orders[bestfixedtime],second).

Gracias por ayudar
1 ACCEPTED SOLUTION

Pruebe este @timob :
IF(nombredefreno[col_name]=0, DATEDIFF(orders[Fixedtime],orders[finalfixedtime],second), IF(tablename[col_name]=1, DATEDIFF(orders[Fixedtime],orders[bestfixedtime],second),"NA"))

Por favor, márquelo como una solución si ayuda. Gracias.


Saludos

TruptiS

View solution in original post

8 REPLIES 8
Syndicate_Admin
Administrator
Administrator

@timob YOu puede escribir DAX así:

= SWITCH(TRUE(),

TableName[ColumnName]=0,DATEDIFF(orders[Fixedtime],orders[finalfixedtime],second),

TableName[ColumnName]=1,DATEDIFF(orders[Fixedtime],orders[bestfixedtime],second)

)

Hi Tahreem24,

Me da este error: En las comparaciones DAX, no se admite la comparación de valores de tipo Text con valores de tipo Integer. Considere la posibilidad de utilizar la función VALUE o FORMAT para convertir uno de los valores.

Syndicate_Admin
Administrator
Administrator

¿ @timob

Prueba esto:
IF(nombredefreno[col_name]=0, DATEDIFF(orders[Fixedtime],orders[finalfixedtime],second), IF(tablename[col_name]=1, DATEDIFF(orders[Fixedtime],orders[bestfixedtime],second,"NA"))

Si esto funciona, márquelo como una solución. Gracias.
Saludos

TruptiS

Hi TruptiS,

Escribí la fórmula pero me da el error: DATEDIFF no puede tener más de 3 argumentos...

Pruebe este @timob :
IF(nombredefreno[col_name]=0, DATEDIFF(orders[Fixedtime],orders[finalfixedtime],second), IF(tablename[col_name]=1, DATEDIFF(orders[Fixedtime],orders[bestfixedtime],second),"NA"))

Por favor, márquelo como una solución si ayuda. Gracias.


Saludos

TruptiS

Ahora me da este error: En las comparaciones dax, no se admite la comparación de valores de tipo Text con valores de tipo Integer. Considere la posibilidad de utilizar la función VALUE o FORMAT para convertir uno de los valores.

@timob ,

Este error indica que la columna con los valores 0 y 1 tiene el formato "Texto" y que los valores de diferentes tipos no se pueden comparar entre sí.

vkkfmsft_0-1647243014940.png

Por lo tanto, debe usar comillas dobles para cambiar el 0 a texto.

Result = 
IF (
    orders[column] = "0",
    DATEDIFF ( orders[Fixedtime], orders[finalfixedtime], SECOND ),
    DATEDIFF ( orders[Fixedtime], orders[bestfixedtime], SECOND )
)

vkkfmsft_1-1647243091165.png

Si el problema aún no se resuelve, proporcione información detallada sobre el error o el resultado esperado que espera. Hágamelo saber de inmediato, esperando su respuesta.
Saludos
Winniz
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

¡Solo necesitas una declaración si!

if('table'[column]=0, 
     DATEDIFF(orders[Fixedtime],orders[finalfixedtime],second),
     DATEDIFF(orders[Fixedtime],orders[bestfixedtime],second)
)

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.