Forum Discussion
ArvindJha
1 year agoHelper III
Fetch data from previous row
Hi Team, I want to fetch data from previous row and create some if condition based on the values , it should restart for every patient and also be similar to Qlik peek function , thanks Input: ...
- 1 year ago
Hey ArvindJha ,
I use the below DAX to create a calculated columnWEIGHT_ = var currentPatientID = 'Table'[PATIENTID] var currentSite = 'Table'[SITE] var prevDate = maxx( SELECTCOLUMNS( FILTER( WINDOW( 1, abs, -1, rel, SUMMARIZE( ALLSELECTED( 'Table' ), 'Table'[PATIENTID], 'Table'[SITE], 'Table'[DATE], 'Table'[WEIGHT] ), ORDERBY( 'Table'[DATE] , ASC), PARTITIONBY( 'Table'[PATIENTID] , 'Table'[SITE]) ), NOT( ISBLANK( 'Table'[WEIGHT] ) ) ), "d" , [DATE] ) , [d] ) return CALCULATE( MAX('Table'[WEIGHT]), ALL('Table'), 'Table'[PATIENTID] = currentPatientID, 'Table'[SITE] = currentSite, 'Table'[DATE] = prevDate )The table looks like this
Hopefully, this provides what you are looking for.
If not, read this article: https://www.minceddata.info/2024/03/09/my-favorite-windowing-function-window/
Regards,Tom
TomMartens
1 year agoSuper User
Hey ArvindJha ,
I use the below DAX to create a calculated column
WEIGHT_ =
var currentPatientID = 'Table'[PATIENTID]
var currentSite = 'Table'[SITE]
var prevDate =
maxx(
SELECTCOLUMNS(
FILTER(
WINDOW(
1, abs, -1, rel,
SUMMARIZE(
ALLSELECTED( 'Table' ),
'Table'[PATIENTID],
'Table'[SITE],
'Table'[DATE],
'Table'[WEIGHT]
),
ORDERBY( 'Table'[DATE] , ASC),
PARTITIONBY( 'Table'[PATIENTID] , 'Table'[SITE])
),
NOT( ISBLANK( 'Table'[WEIGHT] ) )
),
"d" , [DATE]
)
, [d]
)
return
CALCULATE(
MAX('Table'[WEIGHT]),
ALL('Table'),
'Table'[PATIENTID] = currentPatientID,
'Table'[SITE] = currentSite,
'Table'[DATE] = prevDate
)
The table looks like this
Hopefully, this provides what you are looking for.
If not, read this article: https://www.minceddata.info/2024/03/09/my-favorite-windowing-function-window/
Regards,
Tom
ArvindJha
1 year agoHelper III
TomMartens Thanks it works , also thanks for sharing the link , it seems useful