March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Guys I have the following table:
I want to create a Sankey visual, the STAGE_NAME column would be the SOURCE column, and I want to create the DESTINATION column.
But in order to create this column, I need a DAX code to iterate over each DEAL_ID and capture the next STAGE_NAME based on the column DATE_CREATE. Every time the DEAL_ID changes, I won't need the next phase.
Trying to make it clear, all need all the phases (STAGE_NAME) that a card (DEAL_ID) passed in cronological order. Following the order of the sankey visual: SOURCE and DESTINATION. My problem is: how to create the DESTINATION column.
Link of the table:
https://drive.google.com/file/d/1mi0dAjGnKbxHa7zn7CM9zx7YjyfxeDOy/view?usp=sharing
Solved! Go to Solution.
@tahechadv_2022 you can use a measure like this which doubles as a calculated column too.
Measure 2 =
CALCULATE (
MAX ( 'Table'[stagename] ),
ALL ( 'Table' ),
OFFSET (
1,
ALL ( 'Table'[dealId], 'Table'[date_create] ),
ORDERBY ( 'Table'[date_create], ASC ),
,
PARTITIONBY ( 'Table'[dealId] )
)
)
TO =
CALCULATE (
MAX ('stage_history'[STAGE_NAME]),
FILTER (
ALLEXCEPT ( 'stage_history', 'stage_history'[DEAL_ID] ),
'stage_history'[DATE_CREATE] > EARLIER ( 'stage_history'[DATE_CREATE] )
)
)
TO =
CALCULATE (
MAX ('stage_history'[STAGE_NAME]),
FILTER (
ALLEXCEPT ( 'stage_history', 'stage_history'[DEAL_ID] ),
'stage_history'[DATE_CREATE] > EARLIER ( 'stage_history'[DATE_CREATE] )
)
)
Hi
With the sample data csv file, what is the final output expected.
Cheers
CheenuSing
I want to create a column named TO, this column must contain the name of the next STAGE_NAME according to the cronology of DATE_CREATE.
The last DEAL_ID must be empty, because this card didn't move anywhere else.
@tahechadv_2022 you can use a measure like this which doubles as a calculated column too.
Measure 2 =
CALCULATE (
MAX ( 'Table'[stagename] ),
ALL ( 'Table' ),
OFFSET (
1,
ALL ( 'Table'[dealId], 'Table'[date_create] ),
ORDERBY ( 'Table'[date_create], ASC ),
,
PARTITIONBY ( 'Table'[dealId] )
)
)
Amazing, thank-you!
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.
User | Count |
---|---|
124 | |
87 | |
85 | |
70 | |
51 |
User | Count |
---|---|
205 | |
153 | |
97 | |
79 | |
69 |