Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Vote for your favorite vizzies from the Power BI Dataviz World Championship submissions. Vote now!

Reply
Vmonc
Regular Visitor

Capturing Dynamic Week-over-Week Sales Changes at Line Item Level

I'm working on creating a report in Power BI that aims to provide a week-over-week comparison of sales values at the sales order-line item level.

 

My initial approach was to use DAX to compare the current week's sales with the previous week's sales. However, I've encountered an issue where any changes made to a line item in the current week are captured, but the sales details from the previous week would not be visible in the report.

 

To simplify, let's consider an example: Last week, a sales order with 5 line items resulted in a total of $1 million. This week, one of the line items, valued at $250,000, was rejected. When I generate the report this week, I would only see the remaining amount, which is $750,000 for 4 line items.

 

I want to track week-over-week changes at the line item level, including any updates or rejections.

 

Should I consider using snapshots or another approach to achieve this? I Would aprreciate if anyone could offer insights or suggestions regarding this.

1 ACCEPTED SOLUTION
lbendlin
Super User
Super User

Power BI has no memory. Your data must be stored further upstream.

 

You could consider using snapshots but that would create larger storage demands.

 

The better solution is to use CDC or other forms of event tracking.  In your example you would have a change history table that would mark the event of a line item being rejected at a certain date (ideally also stating the reason).  Then you can recalculate the exact status of any order at any point in time, and easily create change charts (Sankey for example).

View solution in original post

1 REPLY 1
lbendlin
Super User
Super User

Power BI has no memory. Your data must be stored further upstream.

 

You could consider using snapshots but that would create larger storage demands.

 

The better solution is to use CDC or other forms of event tracking.  In your example you would have a change history table that would mark the event of a line item being rejected at a certain date (ideally also stating the reason).  Then you can recalculate the exact status of any order at any point in time, and easily create change charts (Sankey for example).

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

Vote for your favorite vizzies from the Power BI World Championship submissions!

Sticker Challenge 2026 Carousel

Join our Community Sticker Challenge 2026

If you love stickers, then you will definitely want to check out our Community Sticker Challenge!

January Power BI Update Carousel

Power BI Monthly Update - January 2026

Check out the January 2026 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.