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.
Chicos, estoy usando dax para obtener mi valor de fila anterior basado en mi número de índice.
Primero, echemos un vistazo a mi mesa
Ok, necesito ordenar primero por mi número de identificación para agrupar todos los valores que son los mismos, luego necesito ordenar por fecha / hora, para obtener el orden de cómo se hizo nuestro proceso.
Luego creé mi índice para obtener mi valor anterior usando un var.
El problema es que, cuando se actualiza mi BI, un nuevo elemento se escribe como mi último índice y no se agrupa con los otros números de identificación.
Y este nuevo artículo no se contará en mi proceso porque no llena los requisitos de mi si.
Así es como conseguí mi fila prev "
Solved! Go to Solution.
Hola @Vieiraguilherme ,
Puede crear esta columna calculada en lugar de la columna de índice:
Sort =
VAR _rank =
RANKX (
FILTER ( ALL ( 'Table' ), 'Table'[ID Number] = EARLIER ( 'Table'[ID Number] ) ),
'Table'[Changed On Timestamp],
,
ASC,
DENSE
)
VAR _sort =
IF (
[ID Number] = MIN ( 'Table'[ID Number] ),
_rank,
_rank
+ CALCULATE (
COUNTROWS (
FILTER ( ALL ( 'Table' ), 'Table'[ID Number] < MAX ( 'Table'[ID Number] ) )
)
)
)
RETURN
_sort
A continuación, cree una medida para obtener la fila anterior:
_prerow =
CALCULATE (
MAX ( 'Table'[Changed On Timestamp] ),
FILTER (
ALL ( 'Table' ),
'Table'[Sort]
= CALCULATE (
MAX ( 'Table'[Sort] ),
FILTER ( ALL ( 'Table' ), 'Table'[Sort] < MAX ( 'Table'[Sort] ) )
)
)
)
Resultado actual:
Cuando agredo una nueva fila en la tabla, el valor de la fila anterior todavía se sigue recibiendo correctamente:
Adjunto un archivo de muestra en el siguiente, espera ayudarle.
Best Looks,
Yingjie Li
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 @Vieiraguilherme ,
Puede crear esta columna calculada en lugar de la columna de índice:
Sort =
VAR _rank =
RANKX (
FILTER ( ALL ( 'Table' ), 'Table'[ID Number] = EARLIER ( 'Table'[ID Number] ) ),
'Table'[Changed On Timestamp],
,
ASC,
DENSE
)
VAR _sort =
IF (
[ID Number] = MIN ( 'Table'[ID Number] ),
_rank,
_rank
+ CALCULATE (
COUNTROWS (
FILTER ( ALL ( 'Table' ), 'Table'[ID Number] < MAX ( 'Table'[ID Number] ) )
)
)
)
RETURN
_sort
A continuación, cree una medida para obtener la fila anterior:
_prerow =
CALCULATE (
MAX ( 'Table'[Changed On Timestamp] ),
FILTER (
ALL ( 'Table' ),
'Table'[Sort]
= CALCULATE (
MAX ( 'Table'[Sort] ),
FILTER ( ALL ( 'Table' ), 'Table'[Sort] < MAX ( 'Table'[Sort] ) )
)
)
)
Resultado actual:
Cuando agredo una nueva fila en la tabla, el valor de la fila anterior todavía se sigue recibiendo correctamente:
Adjunto un archivo de muestra en el siguiente, espera ayudarle.
Best Looks,
Yingjie Li
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, ¿qué cosa este collumn/medida funcionará con un BI que tenga 250.000 filas?
Hola @Vieiraguilherme ,
La columna calculada y la medida deben funcionar.
Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@Vieiraguilherme , Probar como
nueva medida
Acionamento ?
CALCULATE(MAX([Changed On Timestamp]),FILTER(table, 'table'[Index] á max( 'table'[Index] )-1))
nueva columna
Acionamento ?
CALCULATE(MAX([Changed On Timestamp]),FILTER(table, 'table'[Index] á earlier( 'table'[Index] )-1))
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 | |
2 | |
2 | |
2 | |
1 |