You could create report 2 (by modifying a copy of existing report 1)that creates a table with all the data, e.g. Stock levels as at "date/time".
The table saves to Excel for example. If very large, it can save to Excel then link an access table to it.
This is in effect a 'view'. Schedule it to run every x mins, allowing time for it to save before the next scheduled run.
Then create report 3,(by modifying a copy of existing report 1)change the source to report2 in Excel or Access.
This report could be something like
"stock level & locations for product A"
parameter = SKU code & client
you can show the last date time the data was updated so users would know what time data was correct up to.
This is a viable option if the data being queried is not required to be live, but recent, and the records in report 2 table not too high for access/excel to cope with.
If you link via access, you can be saving Report 2 every hour/30 mins and the linked table in access will still work while tables update.
We have many queries in CE/Infoview that work like this.
It's not the best solution techically, but it works