My quesion is about filtering of data in a Windows desktop application.
I have a large amount of data coming from a database (> 900.000 records). The records are shown in a classic listcontrol (rows and columns). The user needs to select an item from the list. Since the amount of records is so high, I will add some way of narrowing down the data, i.e. filtering possibility (alltough I probably won't name it that way).
Let me try to make my question clear with a (purely fictional) picture:
As you can see I have at the top a way to narrow down the data, and at the bottom a listcontrol with search results. With each selection that is made in the filter criteria, the results are immediately updated. In case the results exceed a certain amount, I show a message "please narrow down". Note that not all criteria have a corresponding column in the results list.
My question is very specific: does the filtering that you apply also need to have an effect on the search criteria?
Suppose there is a brand that does not have Diesel engined cars (Ferrari for example), and I first select the "diesel" option, then open the Brand drop down box. Does it still need to show Ferrari as a brand?
My own analysis when I do filter out the filter criteria as well:
PRO: It is useful because it gets you quicker to your goal. Combinations of criteria that are in contradiction with each other are left out, so the list of search criteria itself is smaller
CON: This may be confusing for some users. They will see that sometimes Ferrari is in the list, sometimes it is not. Will they be able to understand why?
Is there any general rule of thumb, or some research or usability studies that has been done about this subject?