Forum Discussion
Get last 2 transactions
- Anonymous2 years ago
I think you'll need to create a rank column for the transactions by product;
Rank = RANKX( FILTER( ALL('Sales'), 'Sales'[Product] = EARLIER('Sales'[Product])), 'Sales'[Transaction Date],, DESC, Dense )Then for each of the other components, you can create additional columns; based on rank. You might need to adjust max to sum or whichever other aggregate you use for quantity.
Quantity #1 = CALCULATE(MAX('Sales'[Quantity]), FILTER( 'Sales', 'Sales'[Product] = EARLIER('Sales'[Product]) && 'Sales'[Rank] = 1))Expiry Date #1 = CALCULATE(MAX('Sales'[Expiry Date]), FILTER( 'Sales', 'Sales'[Product] = EARLIER('Sales'[Product]) && 'Sales'[Rank] = 1))and then create the same for #2, just changing the rank, then you can create your matrix
- 2 years ago
Based on your description, I created data to reproduce your scenario. The pbix file is attached in the end.
- Anonymous2 years ago
Hi,
Thanks for the solutions Anonymous and Ahmedx provided, and i want to offer some more information for user to refer to.
hello Oros , based on your description, you can refer to the following sample.
Sample data :
You can create the following measures
Experdate1 = VAR a = SUMMARIZE ( TOPN ( 2, FILTER ( ALLSELECTED ( 'Table' ), [Product] IN VALUES ( 'Table'[Product] ) ), CALCULATE ( MAX ( 'Table'[Transaction#] ) ), DESC ), [Transaction#] ) RETURN CALCULATE ( MAX ( 'Table'[Expiry] ), 'Table'[Transaction#] = MINX ( a, [Transaction#] ) )Experdate2 = VAR a = SUMMARIZE ( TOPN ( 2, FILTER ( ALLSELECTED ( 'Table' ), [Product] IN VALUES ( 'Table'[Product] ) ), CALCULATE ( MAX ( 'Table'[Transaction#] ) ), DESC ), [Transaction#] ) RETURN CALCULATE ( MAX ( 'Table'[Expiry] ), 'Table'[Transaction#] = MAXX ( a, [Transaction#] ) )Qty_1 = CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[Expiry]=[Experdate1]))Qty_2 = CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[Expiry]=[Experdate2]))Output
Best Regards!
Yolo Zhu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Based on your description, I created data to reproduce your scenario. The pbix file is attached in the end.
Hi Ahmedx ,
Thank you for your quick reply. Is your solution based on the transaction id or expiration dates? Your pbix files works, but when I applied the measures to my data, I get a repetitive result.
Thanks again.
- Ahmedx2 years ago
Super User
I don’t see the product in your screenshot, attach your file to help you
- Oros2 years ago
Post Prodigy
Hi Ahmedx ,
Thanks again for your reply. I can't a way to attach the sample pbix.
It looks like the measures are NOT based on the last 2 transactions for each product.
This is the undesired result
But the result should be based on the last 2 transactions for each product (example, product 1211)
- Anonymous2 years agoNot applicable
Check solution below and it'll answer your question.