Ooh, this is a fun one!
Every so often the graphical query by example thingie screws up and adds extra 'OR' lines. Your SQL looks OK, btw....
Here's what I would try: Take the query you have now, get rid of all the criteria and save it with some different name. Then create a new query based on the query you just saved and put all your criteria on that. (The "inner query" will appear as a table in the "outer query") See if this new query works.
If not, I'd next take the "inner query" and get rid of all the spaces in field names (replace them with an underscore or something). i.e. the aliases would have names without spaces but the original field names could stay the same.
Anyway, try that for now. If it still doesn't work there are a few other tricks we could try....
Thanks tommyrot! I am about to call it quits for the day and go teach some sewing. I will try this tomorrow. I am really excited about learning Access, but I can't bother our IT people here too much or our department will have to pay for their time, so after about 4 hours with our database designer and watching her do things, I am muddling through myself for the time being. All I can say is that this is not as intuitive as filemaker, but I think I am getting it a little bit. I just wish I had a working database that I could pick apart to see how things were done.
What version of Access are you using?
2003, for PC. All of my experience is in Filmaker Pro 7 for Mac
I've reproduced the problem here. MS's how-to criteria
Forms!FormName!ControlName Or Forms!FormName!ControlName Is Null
just doesn't seem to be liked at all by the GQBE grid.
So MS is telling me the wrong way to do something in their own product, or I was looking at the wrong instructions (I looked about 30 times to make sure I was looking at the right version instructions? (I don't know what the GQBE grid is?)
I don't know what crack they're smoking. Their technique seems strange to me. Anyway, I got it to work a different way. (Work as in the GQBE grid doesn't screw it up. Haven't tested with actual data.)
gimme a few minutes to write it up....
Thanks in advance tommyrot-- I am really going now or I am going to be late for class, but I will take a look later. Again, thanks for your time.
OK, for their example with this criteria:
Criteria: Forms![QBF_Form]![What Customer ID] Or Forms![QBF_Form]![What Customer ID] Is Null
on the [Customer ID] field - do this instead: put the following in a new field cell:
[Customer ID]=Forms![QBF_Form]![What Customer ID] Or Forms![QBF_Form]![What Customer ID] Is Null
The GQBE grid will alias it for you - that's OK. Then in the criteria cell below it, put 'True' (no quotes). You might also want to uncheck the 'display' box for that new field. So all we're doing is putting the test into a new field, and then using a 'True' criteria against the result of that test.
Does this make sense?
eta: You don't need to do that other stuff I told you. But some think it's a good idea to not use spaces in table, form, query and field names.
eta²: The technique they showed should work, but we've never done anything exactly like that. But regardless, when you take the query and open it up again in design view, it screws up the displaying of the query. And if you save it again it'll save the screwed up version. That's enough reason to not do it that way.
eta³: One potential problem with both ways is if you enter something into a field on the form as a criteria and then clear out the criteria, you might end up with an empty string in the field rather than the Null that was there when you opened up the form. So the query will only show records with an empty string in that field. If that's not what you want, do your new field cell like this:
[Customer ID]=Forms![QBF_Form]![What Customer ID] Or nz(Forms![QBF_Form]![What Customer ID],"") = ""
The 'True' criteria stays the same.