So here is how you could improve performance significantly depending on the number of projects selected at run time:
In your RollUpLists query, filter the items based on FileDirRef like the following:
“FileDirRef” has the following format:
<relative site url>lists/<list’s name>
Say your top level site is “/sites/Projects”, FileDirRef would have the following value within each site :
- sites/projects/project01/lists/Milestones
- sites/projects/project02/lists/Milestones
- sites/projects/project03/lists/Milestones
Now you should arrange so that your parameter’s value has the following form:
sites/projects/<project’s name>/lists/Milestones.
When I made some tests, I just entered the values but you would obviously come up with the values using some function within your query over your project’s database.
Obviously, we should improve Enesys RS Data Extension so that such scenarios are easier to implement. We will definitely do, but in the meantime, this approach should work.
Can you keep us informed?
Regards,