The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hola
Necesito clasificar mis datos en función de updatedDate (Sort Asc) y Status, pero solo incremento para un estado específico. En su mayor parte, puedo usar rankx y obtener un pedido, pero necesito ayuda para modificar esto para garantizar que aumente solo para cierto estado.
Es decir, para cada ID, el estado "ND" siempre será la versión 1 (la fecha de actualización ayuda a garantizar esto) y a partir de ahí solo cuando el estado es "NDV" la versión debe incrementarse. Este cambio de estado entre "ND", estado intermedio (C, E) y "NDV" puede ocurrir cualquier número de veces. ND ocurrirá solo una vez.
Mi DAX actual para la columna "versión" a continuación
Salida necesaria: columna "VersionNeeded" a continuación
Datos de muestra y salida necesarios
Identificación | Estado | Fecha de actualización | UpdatedDateOrder | Versión | VersiónNecesado |
1 | ND | 1-ene-21 | 1 | 1 | 1 |
1 | E | 1-feb-21 | 2 | 1 | 1 |
1 | NDV | 1-mar-21 | 3 | 2 | 2 |
1 | C | 1-abr-21 | 4 | 1 | 2 |
1 | NDV | 1-may-21 | 5 | 2 | 3 |
1 | E | 1-jun-21 | 6 | 1 | 3 |
1 | NDV | 1-jul-21 | 7 | 2 | 4 |
1 | E | 1-ago-21 | 8 | 1 | 4 |
1 | NDV | 1-sep-21 | 9 | 2 | 5 |
2 | ND | 1-ene-21 | 1 | 1 | 1 |
2 | E | 1-feb-21 | 2 | 1 | 1 |
2 | NDV | 1-mar-21 | 3 | 2 | 2 |
2 | E | 1-abr-21 | 4 | 1 | 2 |
2 | NDV | 1-may-21 | 5 | 2 | 3 |
2 | C | 1-jun-21 | 6 | 1 | 3 |
2 | NDV | 1-jul-21 | 7 | 2 | 4 |
Solved! Go to Solution.
¿ @axy5092
Pruébalo
Version1 =
RANKX( FILTER('TestVersion', 'TestVersion'[Status]= "NDV"),[UpdatedDateOrder],[UpdatedDateOrder]+1,ASC,Dense)
Hola @Vera_33, tengo una continuación de mi problema con el que estoy atascado, estoy tratando de encontrar el número de días entre las fechas para cada versión, por favor hágamelo saber si hay una manera de que pueda usar los rangos existentes y calcular la diferencia
Si hay un estado "E"/"C" después de "ND"/"NDV", calcule MaxUpdateDate(C/E) - MinUpdated(ND/NDV)
Else, si el estado más reciente de esa versión es "NDV" para un identificador, entonces = Hoy - MinUpdateDate(NDV)
P. ej...:
Id 549 versión 1, C es el estado más reciente, por lo que la línea 3, DaysinEachVersion = 9/6/2021-6/24/2021
Id 549 versión 2, NDV es el estado más reciente, por lo que la línea 2, DaysinEachVersion= Today()-12/3/2021
identificación | estado | MinUpdatedDate | MaxUpdatedDate | Versión | UpdatedDateOrder | DaysinEachVersion_ColumnNeeded |
549 | C | 9/6/2021 | 9/6/2021 | 1 | 2 | |
549 | NDV | 12/3/2021 | 1/19/2022 | 2 | 3 | 66 |
549 | ND | 6/24/2021 | 8/1/2021 | 1 | 1 | 74 |
615 | ND | 8/9/2021 | 9/7/2021 | 1 | 1 | 41 |
615 | NDV | 10/27/2021 | 10/29/2021 | 2 | 3 | 103 |
615 | E | 9/19/2021 | 9/19/2021 | 1 | 2 |
Apreciar cualquier orientación/Ayuda, Gracias
¿ @axy5092
Pruébalo
Version1 =
RANKX( FILTER('TestVersion', 'TestVersion'[Status]= "NDV"),[UpdatedDateOrder],[UpdatedDateOrder]+1,ASC,Dense)
Genial, eso funcionó perfecto. Muchas gracias, apreciamos la rápida respuesta