Edhy,
I am not sure how to respond to this post as I pretty much would not use the BrowseDialog for reporting...at all. The BrowseDialog is intended for working with a single result set. Though we have added the ability to create joins, etc. through the override properties, this is still not a good mechanism for capturing information prior to a report.
First, you should have a base class in your report environment that is a critera class. This criteria class is populated with custom properties for each report. You then have a root "Populate" method that takes this criteria class and executes a stored procedure (or other query) to retrieve all result sets necessary. In our medical application, we even save off this criteria class by serializing it by user so it remembers the settings use on a per user basis the last time the report was run.
Here is the deal, Edhy. Though we could create a low-level criteria class like you are suggesting, most reports, especially the bigger the app becomes, really need more sophisticated queries. So the end-user should just be presented with a dialog to capture the information necessary, then the criteria captured passed over to the report engine. If you will recall, in class we talked about how to create a criteria and report data source for each report in your application. The report data source and criteria may actually be used across more than one report, but this gives the most granular level of flexibility. StrataFlix tries to show this as well, though it doesn't actually save off the criteria, etc.
Also, Edhy, some of our criteria screens are far too complicated to be used in a "boxed" situation like this. We have some report criteria dialogs that are very complex and something like this could just not be canned. For simple reports, I see what you are getting at. But more likely, we should create a reporting criteria capture and management environment similar to our medical application. But even if we do this, the query portion should still fall on your applications responsibility because report queries become too complex. Heck, in our medical application when dealing with billing transactions, we could be dealing with millions of records, dozens of different tables, and at times, 10-20 result sets coming back from a SPROC. So though I see what you are trying to get at, I just don't see how this would be feasible for most environments.
We will sit down and talk about your situation, but ultimately, I think our time would be better spent creating a broader reporting criteria, data source, and criteria capture management tool within the framework (which BTW, is actually already on the list for the future).