Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola quiero crear una nueva tabla en DAX a partir de una en la que tengo el estado de los registros y necesito crear nuevos registros para cada día en periodo, con el estado al final del día, se ve algo así
Tabla1 | Cuadro2 | resultado | ||||||||||
Fecha | Idtran | idop | Created_at | estado | fecha | idop | estado | |||||
01/01/2022 | 1 | 1 | 01/01/2022 11:00 | Sentada | 01/01/2022 | 1 | Sentada | |||||
02/01/2022 | 2 | 2 | 02/01/2022 13:25 | Sentada | 02/01/2022 | 2 | EstadoB | |||||
03/01/2022 | 3 | 1 | 02/01/2022 16:25 | EstadoB | 02/01/2022 | 1 | EstadoB | |||||
04/01/2022 | 4 | 3 | 02/01/2022 17:25 | Sentada | 02/01/2022 | 3 | Sentada | |||||
05/01/2022 | 5 | 1 | 03/01/2022 11:25 | EstadoC | 03/01/2022 | 1 | Declaró | |||||
06/01/2022 | 6 | 1 | 03/01/2022 13:25 | Declaró | 03/01/2022 | 2 | EstadoB | |||||
07/01/2022 | 7 | 2 | 03/01/2022 13:30 | EstadoB | 03/01/2022 | 3 | Sentada | |||||
08/01/2022 | 8 | 4 | 03/01/2022 13:40 | Sentada | 03/01/2022 | 4 | Sentada | |||||
09/01/2022 | 9 | 2 | 05/01/2022 13:25 | EstadoC | 04/01/2022 | 1 | Declaró | |||||
10/01/2022 | 10 | 2 | 05/01/2022 16:25 | EstadoB | 04/01/2022 | 2 | EstadoB | |||||
11/01/2022 | 11 | 3 | 06/01/2022 13:25 | EstadoB | 04/01/2022 | 3 | Sentada | |||||
12/01/2022 | 12 | 4 | 08/01/2022 13:25 | Declaró | 04/01/2022 | 4 | Sentada | |||||
13/01/2022 | 13 | 3 | 09/01/2022 13:25 | EstadoB | 05/01/2022 | 1 | Declaró | |||||
05/01/2022 | 2 | EstadoB | ||||||||||
05/01/2022 | 3 | Sentada | ||||||||||
05/01/2022 | 4 | Sentada | ||||||||||
..... |
Gracias
Solved! Go to Solution.
Pruebe esta tabla calculada:
LastStateOfRecord =
VAR vBaseTable =
CROSSJOIN ( VALUES ( Table1[Date] ), VALUES ( Table2[idop] ) )
VAR vTableWithState =
ADDCOLUMNS (
vBaseTable,
"Latest State",
VAR vDate = Table1[Date]
VAR vIdop = Table2[idop]
VAR vRowsForID =
FILTER (
Table2,
vIdop = Table2[idop]
&& INT ( Table2[Created_at] ) <= Table1[Date]
)
VAR vMaxDate =
MAXX ( vRowsForID, Table2[Created_at] )
VAR vLatestRow =
FILTER ( vRowsForID, Table2[Created_at] = vMaxDate )
VAR vLatestState =
MAXX ( vLatestRow, Table2[state] )
RETURN
vLatestState
)
VAR vResult =
FILTER ( vTableWithState, [Latest State] <> BLANK () )
RETURN
vResult
Debe adjuntar la tabla de fechas entre comillas simples en el DAX. O bien, puede nombrar su tabla de fechas DimDate, Dates, Calendar, etc.
gracias, me has guardado, si es posible, quiero preguntar una cosa más, ¿hay alguna manera, de usar un valor filtrado como fecha en una segmentación de datos, y dependiendo del valor seleccionado, usar esa fecha, elegida por el usuario en un dax
<<
>>
is there a way in which i coul replace fecha(2022,4,28)+(5/24) ) con un valor seleccionable?
muchas gracias de nuevo mucho
Pruebe esta tabla calculada:
LastStateOfRecord =
VAR vBaseTable =
CROSSJOIN ( VALUES ( Table1[Date] ), VALUES ( Table2[idop] ) )
VAR vTableWithState =
ADDCOLUMNS (
vBaseTable,
"Latest State",
VAR vDate = Table1[Date]
VAR vIdop = Table2[idop]
VAR vRowsForID =
FILTER (
Table2,
vIdop = Table2[idop]
&& INT ( Table2[Created_at] ) <= Table1[Date]
)
VAR vMaxDate =
MAXX ( vRowsForID, Table2[Created_at] )
VAR vLatestRow =
FILTER ( vRowsForID, Table2[Created_at] = vMaxDate )
VAR vLatestState =
MAXX ( vLatestRow, Table2[state] )
RETURN
vLatestState
)
VAR vResult =
FILTER ( vTableWithState, [Latest State] <> BLANK () )
RETURN
vResult
Lo intento, pero me da un error
Debe adjuntar la tabla de fechas entre comillas simples en el DAX. O bien, puede nombrar su tabla de fechas DimDate, Dates, Calendar, etc.