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
Tengo una serie de registros con duplicados. Cada registro tiene una marca de tiempo (fecha y hora) y una columna de estado.
Estoy usando la siguiente expresión DAX para contar registros por la marca de tiempo más reciente. ¿Cómo modifico esta expresión para incluir también solo los registros "Completados" en el recuento?
LatestRecord =
VAR MostRencentTime =
CALCULATE (
MAX ( TaskTable[RecordTimestamp]),
ALLEXCEPT ( TaskTable, TaskTable[Task ID] )
)
RETURN
IF ( MostRencentTime = MAX ( TaskTable[RecordTimestamp] ), 1, 0 )
Saludos
ImranAmi
Solved! Go to Solution.
Hola @imranamikhan ,
No estoy seguro de cómo desea que el recuento se calcule exactamente, pero pruebe esto:
UniqueCount =
VAR _max =
CALCULATE (
MAX ( TaskTable[RecordTimestamp] ),
ALLEXCEPT ( TaskTable, TaskTable[Task ID] )
)
RETURN
CALCULATE (
COUNTROWS ( TaskTable ),
FILTER (
ALLEXCEPT ( TaskTable, TaskTable[Task ID] ),
TaskTable[Status] = "Completed"
&& TaskTable[RecordTimestamp] = _max
)
)
Proud to be a Super User!
Prueba esto:
Solution =
VAR MaxDate =
MAX ( TaskTable[RecordTimestamp] )
VAR _STATUS =
FILTER (
TaskTable,
TaskTable[Status] = "Completed"
&& TaskTable[RecordTimestamp] = MaxDate
)
VAR _Count =
COUNTROWS ( _STATUS )
RETURN
_Count
¡Salud!
Vivek
Si ayuda, por favor márquelo como una solución
Los felicitaciones serían una cereza en la parte superior 🙂
https://www.vivran.in/
Conectar se conecta en LinkedIn
Hola @imranamikhan ,
¿Eso cumple con su requisito?
LatestRecord =
VAR MostRencentTime =
CALCULATE (
MAX ( TaskTable[RecordTimestamp] ),
ALLEXCEPT ( TaskTable, TaskTable[Task ID] )
)
VAR a =
IF (
MostRencentTime = MAX ( TaskTable[RecordTimestamp] )
&& MAX ( TaskTable[Statue] ) = "Completed",
1,
0
)
RETURN
a
LatestRecord—1 =
SUMX(TaskTable,[LatestRecord])
Gracias @danextian. Estoy trabajando con un conjunto de datos push, así que estoy limitado a usar solo medidas. El DAX sugerido solo devuelve una fecha, no un recuento.
Gracias de nuevo @v-frfei-msft. Lamentablemente, la medida sugerida está produciendo resultados incorrectos. He adjuntado mi archivo de trabajo a través de OneDrive aquí:
https://1drv.ms/u/s!AkH_PeScw-iuhpd6-3DAVBy805z36A?e=gyY196
¿Podrías echar un vistazo cuando tengas un momento?
Hola @imranamikhan ,
No estoy seguro de cómo desea que el recuento se calcule exactamente, pero pruebe esto:
UniqueCount =
VAR _max =
CALCULATE (
MAX ( TaskTable[RecordTimestamp] ),
ALLEXCEPT ( TaskTable, TaskTable[Task ID] )
)
RETURN
CALCULATE (
COUNTROWS ( TaskTable ),
FILTER (
ALLEXCEPT ( TaskTable, TaskTable[Task ID] ),
TaskTable[Status] = "Completed"
&& TaskTable[RecordTimestamp] = _max
)
)
Proud to be a Super User!
Disculpas esto funcionó - el error fue mi parte. Muchas gracias.
Hola @danextian Gracias por su ayuda. Supongo que no estoy siendo claro sobre el requisito porque la solución está produciendo el mismo valor incorrecto que la medida proporcionada amablemente por @v-frfei-msft
Tengo un conjunto de datos. La columna A contiene una lista de entradas únicas (ID de tarea), la columna B contiene un valor de estado y la columna C contiene una marca de tiempo. Cuando se actualizan los datos, se anexan nuevas entradas a los datos existentes con los mismos datos pero con un estado actualizado. Quiero contar el número de apariciones de un estado específico (como "Completado") por el último registro. Es fácil hacer esto en Excel, por ejemplo, cuenta el número de entradas basadas en el último filtro de sello de tiempo y que cuentan por un estado de "Completado".
E.g.
•COUNTIFS(columna B,MAX(columna b),(columna c),"Completado")
En el ejemplo siguiente, 23/03/2020 09:12 es la última fecha de actualización. Así que quiero contar el número de entradas con esa fecha Y ajustar el resultado por un estado de "Completado". El archivo de ejemplo de OneDrive incluye la hoja de cálculo siguiente. ¿Esto se aclara?
Saludos
ImranAmi
Hola - si alguien tiene alguna posible solución que sería apreciado.
Saludos
ImranAmi
Prueba esto:
Solution =
VAR MaxDate =
MAX ( TaskTable[RecordTimestamp] )
VAR _STATUS =
FILTER (
TaskTable,
TaskTable[Status] = "Completed"
&& TaskTable[RecordTimestamp] = MaxDate
)
VAR _Count =
COUNTROWS ( _STATUS )
RETURN
_Count
¡Salud!
Vivek
Si ayuda, por favor márquelo como una solución
Los felicitaciones serían una cereza en la parte superior 🙂
https://www.vivran.in/
Conectar se conecta en LinkedIn
Muchas gracias
Prueba esto:
Solution =
VAR _STATUS =
FILTER ( TaskTable, TaskTable[Status] = "Completed" )
RETURN
CALCULATE (
COUNTROWS ( _STATUS ),
FILTER (
_STATUS,
TaskTable[RecordTimestamp] = MAX ( TaskTable[RecordTimestamp] )
)
)
¡Salud!
Vivek
Si ayuda, por favor márquelo como una solución
Los felicitaciones serían una cereza en la parte superior 🙂
https://www.vivran.in/
Conectar se conecta en LinkedIn
Hola @imranamikhan ,
Inténtalo, por favor.
LatestRecord =
VAR MostRencentTime =
CALCULATE (
MAX ( TaskTable[RecordTimestamp] ),
FILTER (
ALLEXCEPT ( TaskTable, TaskTable[Task ID] ),
TaskTable[Status] = "Completed"
)
)
RETURN
IF ( MostRencentTime = MAX ( TaskTable[RecordTimestamp] ), 1, 0 )
Gracias @v-frfei-msft y @vivran22.
He probado ambas opciones, pero ambos devuelven un valor de 1, mientras que lo que estoy buscando es un recuento de registros con un estado "Completado" por la marca de tiempo más reciente. Si pudiera traducir el DAX en una fórmula de Excel, se vería así:
•COUNTIFS(
Table_TaskList[RecordTimestamp],
MAX(Table_TaskList[RecordTimestamp]),
Table_TaskList[ProcessStatus],"Completado"
)
Hola @imranamikhan ,
¿Ha intentado utilizar la fórmula de @v-frfei-msft y @vivran22 en una columna calculada y luego usar el resultado para su recuento? Si va a utilizar una medida, la fórmula debe ser algo como a continuación:
Count =
CALCULATE (
MAX ( TaskTable[RecordTimestamp] ),
FILTER (
ALLEXCEPT ( TaskTable, TaskTable[Task ID] ),
TaskTable[Status] = "Completed"
)
)
Proud to be a Super User!
Hola @imranamikhan
Puede intentar:
LatestRecord =
VAR MostRencentTime =
CALCULATE (
MAX ( TaskTable[RecordTimestamp]),
ALLEXCEPT ( TaskTable, TaskTable[Task ID] ),
KEEPFILTERS(TaskTable[Status] = "Completed"
)
RETURN
IF ( MostRencentTime = MAX ( TaskTable[RecordTimestamp] ), 1, 0
¡Salud!
Vivek
Si ayuda, por favor márquelo como una solución
Los felicitaciones serían una cereza en la parte superior 🙂
https://www.vivran.in/
Conectar se conecta en LinkedIn
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 |