OK- SQL view
SELECT Classes.ClassName, Classes.DepartmentID, Classes.InstructorID, Classes.NSGNumber, Classes.CRN, Classes.Units, Classes.Year, Classes.Location, Classes.DaysAndTimes, Classes.StartDate, Classes.EndDate, Classes.TermCode, Classes.Price, Classes.Notes, Students.FirstName, Students.MiddleName, Students.LastName, [Students And Classes].StudentClassID, [Students And Classes].ClassID AS [Students And Classes_ClassID], [Students And Classes].StudentID, [Students And Classes].PayAmount, [Students And Classes].PayType, [Students And Classes].PayCCNum, [Students And Classes].PayCCType, [Students And Classes].PayCCExp, [Students And Classes].PayCCName, [Students And Classes].PayCCAuthCode, [Students And Classes].PayDate, [Students And Classes].PayCKNum, [Students And Classes].PayNum, [Students And Classes].DepositDate, [Students And Classes].PaymentNote, Classes.ClassID
FROM Students INNER JOIN (Classes INNER JOIN [Students And Classes] ON Classes.ClassID = [Students And Classes].ClassID) ON Students.StudentID = [Students And Classes].StudentID
WHERE (((Classes.ClassName)=[Forms]![frmClassPayqry]![Class Name] Or (Classes.ClassName)=[Forms]![frmClassPayqry]![Class Name]) AND ((Classes.NSGNumber)=[Forms]![frmClassPayqry]![NSG Number] Or (Classes.NSGNumber)=[Forms]![frmClassPayqry]![NSG Number]) AND ((Classes.CRN)=[Forms]![frmClassPayqry]![CRN] Or (Classes.CRN)=[Forms]![frmClassPayqry]![CRN]) AND ((Classes.Year)=[Forms]![frmClassPayqry]![Year] Or (Classes.Year)=[Forms]![frmClassPayqry]![Year]) AND ((Classes.StartDate)=[Forms]![frmClassPayqry]![Start Date] Or (Classes.StartDate)=[Forms]![frmClassPayqry]![Start Date} Is Null]) AND ((Classes.TermCode)=[Forms]![frmClassPayqry]![Term Code] Or [Forms]![frmClassPayqry]![Term Code] Is Null) AND ((Classes.ClassID)=[Forms]![frmClassPayqry]![Class ID] Or [Forms]![frmClassPayqry]![Class ID] Is Null));
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.