This is not the method that I wanted to use, but I decided to go with a commands object. I created a command object with a query based on my main table. In that query, I created the filter for the data that I needed, then I just used the command object instead of my main table. I realize that I could have done the same thing with a view on the database, but this report is going to run on other copies of the db, and I don't want to add views to all of them. I built my dynamic cascading prompts off of the command object.