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
Estoy un poco oxidado en DAX y espero que alguien pueda ayudar.
Tengo una tabla de resultados de clientes que contiene ID de resultado, Fecha de resultado, ID de cliente
La tabla enlaza con DateCalendar y Customer Table.
Utilizo una segmentación de datos para filtrar los resultados por fecha y mostrarlos en una tabla junto con la fecha del resultado y el ID de cliente.
Luego he creado una medida para calcular la fecha de resultado más temprana para cada cliente para todos sus resultados y otra medida para mostrar la fecha de resultado (solo para fines de cálculo).
Fecha de resultado más temprana = CALCULAR(
Min(RESULTADOS[Date_Outcome]),
TODOS (RESULTADOS),
VALORES(RESULTADOS[Customer_ID])
)
Date_outcome = CALCULAR(
min(RESULTADOS[Date_Outcome]),
TODOSSELECCIONADOS(RESULTADOS[Customer_ID])
)
Ambas medidas se calculan correctamente cuando las coloco en la tabla.
Finalmente, creé una medida para mostrar si la fecha de resultado más temprana es anterior a la fecha de resultado, es decir, el cliente tiene resultados anteriores. He utilizado las primeras 2 medidas y la declaración if para hacer esto.
Fecha de resultado anterior = SI([Fecha de resultado más temprana]<[Date_outcome],1,0)
Cuando dejo esto en la tabla, obtengo una gran cantidad de filas, incluidos los clientes que no tienen resultados. Las filas son correctas para los valores que necesito seleccionar, pero no puedo entender por qué las otras están allí. Si hago un simple datediff en su lugar, esto parece funcionar, pero no es lo que estoy tratando de lograr.
¿Alguien puede ayudarme a entender por qué está sucediendo esto y, con suerte, resolverlo?
¡Gracias!
Hi Grant
Lo siento, no muy bien redactado!
Algunos de los clientes tienen más de un resultado en un período.
Estoy tratando de crear una tabla que muestre a los clientes un resultado en el período. Luego quiero mostrar si tienen resultados previos. En lugar de sumar los resultados, sería un simple 1 para sí tuvieron un resultado anterior o 0 si no.
He puesto un control deslizante en su archivo pbi para reducir los resultados para tratar de demostrar. Cust C tiene un 2 para zmeasure, pero necesito que sea un 1 para poder contar el número de clientes en el período que tuvo un resultado anterior.
¡Espero que tenga más sentido! Graciashttps://westberksgovuk-my.sharepoint.com/:u:/r/personal/jessica_clark_westberks_gov_uk/Documents/Cus...
Lo siento, creo que es la seguridad de mi organización. ¡Probando desde otra ubicación!
CustomerOutcomesV2.pbix
¿Qué tal esto?
zMeasure 2 =
SUMX(
ADDCOLUMNS(
SUMMARIZECOLUMNS(
'Customer'[Customer],
'Date'[MMM-YY]
),
"@Value",
IF( [Earliest Outcome Date] < [Date_outcome], 1, 0)
),
[@Value]
)
En realidad, cuando me meto con las columnas que caigo, ¡está funcionando! ¡Muchas gracias por su ayuda!
Gracias por mirar - lo he intentado pero todavía no funciona para mí
En lugar de su [Fecha de salida anterior], intente esto:
zMeasure =
SUMX(
'Outcomes',
IF( [Earliest Outcome Date] < [Date_outcome], 1, 0 )
)
Brillante, esto funciona, ¡gracias! Solo una pregunta más si no te importa. Algunos clientes tienen más de un resultado, por lo que tienen un resultado de 2. ¿Se puede ajustar esto para mostrar solo 1 por el cliente, es decir, más como el resultado anterior: Sí / No?
No estoy seguro de entender.
¿Desea 1 línea por cliente con un recuento de resultados entre [Fecha de resultado más temprana] y [Date_outcome]?
Puede ser útil intentar reformular su solicitud. Hágamelo saber.
Subvención
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 | |
2 | |
1 |