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.
Hola - Necesito ayuda para crear una medida para devolver:-
Si orden de compra = "correo electrónico" y el motivo es "en blanco" Devuelva "Orden de compra pendiente"
Si la orden de compra tiene un "Valor de todos los dígitos" y el motivo es "En blanco", devuelva "Cargar en curso"
Si la orden de compra tiene un "Valor de todos los dígitos" y el motivo es "Cargado" Devuelva "Cargado"
Si la orden de compra tiene un "Valor a partir de DW" Devuelve "Cargado"
más
Devolver "Error"
Orden de compra | Razón |
Correo electrónico | |
123456 | |
786876876 | Subido |
DW12789 | |
DW12789 | Subido |
TBA | |
Por confirmar |
Resultado
Orden de compra | Razón | Resultado |
Correo electrónico | Orden de compra pendiente | |
123456 | Carga en curso | |
786876876 | Subido | Subido |
DW12789 | Subido | |
DW12789 | Subido | Subido |
TBA | Error | |
Por confirmar | Error |
Hola @gauravnarchal ,
Utilicé esta instrucción DAX para crear una columna calculada. Recomiendo usar una columna calculada y no una medida, ya que esto permitirá usar la columna como una rebanadora y, la mayoría de las veces, no es una buena idea crear una medida que devuelva un escalar no numérico:
result =
var __PurchaseOrder = 'Table'[Purchase Order]
var __Reason = 'Table'[Reason]
return
IF(
( __PurchaseOrder IN { "Email" , "TBA" , "TBC" } && ( ISBLANK( __Reason ) || __Reason = "" ) ) , "Pending Order"
, IF(
( NOT( ISERROR( VALUE( __PurchaseOrder ) ) ) && ( ISBLANK( __Reason ) || __Reason = "" ) ) , "Upload in Progress"
, IF(
( NOT( ISERROR( VALUE( __PurchaseOrder ) ) ) && __Reason = "Uploaded" ) , "Uploaded"
, IF( LEFT( __PurchaseOrder , 2 ) = "DW" , "Uploaded"
, "Error"
)
)
)
)
Este resultado se ve así:
Con suerte, esto proporciona lo que está buscando.
Saludos
Gato
@TomMartens - Crearé la columna calculada según lo aconsejado, pero necesito cambiar ligeramente el requisito y necesitaría su ayuda.
Si orden de compra = "Correo electrónico" o "TBA" o "TBC" y el motivo es "En blanco" Devuelva "Orden de compra pendiente"
Si la orden de compra tiene un "Valor de todos los dígitos" y el motivo es "En blanco", devuelva "Cargar en curso"
Si la orden de compra tiene un "Valor de todos los dígitos" y el motivo es "Cargado" Devuelva "Cargado"
Si la orden de compra tiene un "Valor a partir de DW" Devuelve "Cargado"
más
Devolver "Error"
Orden de compra | Razón |
Correo electrónico | |
123456 | |
123456/123456/123456 | |
123456/99879/34234/234234/234234 | |
786876876 | Subido |
DW12789 | |
DW12789 | Subido |
TBA | |
Por confirmar |
Resultado
Orden de compra | Razón | Razón |
Correo electrónico | Orden de compra pendiente | |
123456 | Carga en curso | |
123456/123456/123456 | Carga en curso | |
123456/99879/34234/234234/234234 | Subido | Subido |
989879879/672686/57657/4757657 | Subido | Subido |
786876876 | Subido | Subido |
DW12789 | Subido | |
DW12789 | Subido | Subido |
TBA | Orden de compra pendiente | |
Por confirmar | Orden de compra pendiente | |
Subido | Error | |
Correo electrónico | Subido | Error |
Hola @gauravnarchal ,
Actualicé mi respuesta inicial, ahora estoy usando el operador IN en combinación con una tabla construida usando brackets rizados.
Saludos
Gato
@TomMartens - Cuando tengo un número de orden de compra que incluye la barra diagonal "/", todavía me está dando el error. Por ejemplo, número de orden de compra 123456/123456/123456
Hola @gauravnarchal ,
como la cadena que contiene el carácter /-no es un valor, considero que el resultado de la instrucción DAX es correcto.
Si necesita más ayuda, por ejemplo, sobre cómo REEMPLAZAR o SUSTITUIR el / con "", piénselo de nuevo y proporcione un archivo pbix que contenga todas las posibles variaciones de cadenas que puedan aparecer en sus datos utilizando el método de entrada manual. Sube el archivo a onedrive o dropbox y comparte el enlace. Si está utilizando Excel para crear el archivo pbix, comparta también el xlsx.
Describa todas las reglas de negocio que deben aplicarse en función de los datos de ejemplo que proporcione.
Saludos
Gato
Hola @TomMartens - Encuentre a continuación la tabla de datos y la tabla de resultados.
Enlace al archivo de Excel - Haga clic aquí
Datos
Motivo del pedido
1063138/1064662 | Subido |
1063507/1063393 | |
8007215/8006322 | Subido |
8006386/8007591 | Subido |
TBA | |
TBA | Subido |
1064132/1064116 | Subido |
8006465/8006468/8006467 | |
1063507/1063393/80064876 | Subido |
TBA | Subido |
Por confirmar | |
1063138 | Subido |
1064662 | |
CORREO ELECTRÓNICO | |
CORREO ELECTRÓNICO | Subido |
Resultado
Estado del motivo del pedido de compra
1063138/1064662 | Subido | Subido |
1063507/1063393 | Carga en curso | |
8007215/8006322 | Subido | Subido |
8006386/8007591 | Subido | Subido |
TBA | Orden de compra pendiente | |
TBA | Subido | Error |
1064132/1064116 | Subido | Subido |
8006465/8006468/8006467 | Carga en curso | |
1063507/1063393/80064876 | Subido | Subido |
TBA | Subido | Error |
Por confirmar | Orden de compra pendiente | |
1063138 | Subido | Subido |
1064662 | Carga en curso | |
CORREO ELECTRÓNICO | Orden de compra pendiente | |
CORREO ELECTRÓNICO | Subido | Error |
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |