PC Review


Reply
Thread Tools Rate Thread

Criteria to return all records if selection from form is null

 
 
Sue Pari
Guest
Posts: n/a
 
      27th May 2010
Hi,

I'm trying to pass multiple query criteria from form controls. I'm using
the following type of syntax for the criteria:

Like Nz([Forms]![ViewEdit Completed Procedures]![SelectOBy],"*")

And this works fine for the fields where there are no Nulls in the data, but
if there are Nulls in this field I don't get those records. Quite
understandable since Like "*" doesn't return Nulls.

What I'm trying to do is to return all records when there is nothing chosen
in the selection box on the form. I've tried a bunch of different IIfs with
various use of quote marks, on the order of:

IIf(IsNull([Forms]![ViewEdit Completed Procedures]![SelectOBy]),"Not Is Null
Or Is Null",[Forms]![ViewEdit Completed Procedures]![SelectOBy])

but they either don't get all the records or they kick a "too complex"
error.

I'm sure this must be easier than I'm making it. Could anyone give me some
help?

Thanks in advance,

Sue

 
Reply With Quote
 
 
 
 
Allen Browne
Guest
Posts: n/a
 
      27th May 2010
It is possible to craft the WHERE clause of the query to it evaluates to
TRUE if the control on the form is null.

Switch the query to SQL View.
Locate the WHERE clause. It will be something like this:
WHERE SomeField = [Forms]![ViewEdit Completed Procedures]![SelectOBy]
Change it like this:
WHERE (([Forms]![ViewEdit Completed Procedures]![SelectOBy] Is Null)
OR ([SomeField] Like [Forms]![ViewEdit Completed
Procedures]![SelectOBy]))

Be careful with the bracketing when mixing ANDs and ORs.

This approach quickly gets unwieldy as you add more options.
It is much more efficient to build a filter string dynamically.
This article explains how to do that:
Search form - Handle many optional criteria
at:
http://allenbrowne.com/ser-62.html
Includes a downloadable sample file (free.)

--
Allen Browne - Microsoft MVP. Perth, Western Australia
Tips for Access users - http://allenbrowne.com/tips.html
Reply to group, rather than allenbrowne at mvps dot org.


"Sue Pari" <(E-Mail Removed)> wrote in message
news:uxysj7U$(E-Mail Removed)...
> Hi,
>
> I'm trying to pass multiple query criteria from form controls. I'm using
> the following type of syntax for the criteria:
>
> Like Nz([Forms]![ViewEdit Completed Procedures]![SelectOBy],"*")
>
> And this works fine for the fields where there are no Nulls in the data,
> but if there are Nulls in this field I don't get those records. Quite
> understandable since Like "*" doesn't return Nulls.
>
> What I'm trying to do is to return all records when there is nothing
> chosen in the selection box on the form. I've tried a bunch of different
> IIfs with various use of quote marks, on the order of:
>
> IIf(IsNull([Forms]![ViewEdit Completed Procedures]![SelectOBy]),"Not Is
> Null Or Is Null",[Forms]![ViewEdit Completed Procedures]![SelectOBy])
>
> but they either don't get all the records or they kick a "too complex"
> error.
>
> I'm sure this must be easier than I'm making it. Could anyone give me
> some help?
>
> Thanks in advance,
>
> Sue


 
Reply With Quote
 
John Spencer
Guest
Posts: n/a
 
      27th May 2010
Sue,

One additional possibility if your table is fairly small OR if the field is
not indexed. Add a zero-length string to the field. You can do this even if
the field is indexed, it just means that the index won't be used and the query
will take a bit longer to run.

Field: MySearchField: [Name of Field] & ""
Criteria: Like Nz([Forms]![ViewEdit Completed Procedures]![SelectOBy],"*")

You can experiment with this and see if the performance hit is acceptable.

John Spencer
Access MVP 2002-2005, 2007-2010
The Hilltop Institute
University of Maryland Baltimore County

Sue Pari wrote:
> Hi,
>
> I'm trying to pass multiple query criteria from form controls. I'm
> using the following type of syntax for the criteria:
>
> Like Nz([Forms]![ViewEdit Completed Procedures]![SelectOBy],"*")
>
> And this works fine for the fields where there are no Nulls in the data,
> but if there are Nulls in this field I don't get those records. Quite
> understandable since Like "*" doesn't return Nulls.
>
> What I'm trying to do is to return all records when there is nothing
> chosen in the selection box on the form. I've tried a bunch of
> different IIfs with various use of quote marks, on the order of:
>
> IIf(IsNull([Forms]![ViewEdit Completed Procedures]![SelectOBy]),"Not Is
> Null Or Is Null",[Forms]![ViewEdit Completed Procedures]![SelectOBy])
>
> but they either don't get all the records or they kick a "too complex"
> error.
>
> I'm sure this must be easier than I'm making it. Could anyone give me
> some help?
>
> Thanks in advance,
>
> Sue

 
Reply With Quote
 
Sue Pari
Guest
Posts: n/a
 
      27th May 2010
Thanks to you all for the excellent advice! I'll work through the different
approaches and see what I can do. I really appreciate the help.

Sue


"Sue Pari" <(E-Mail Removed)> wrote in message
news:uxysj7U$(E-Mail Removed)...
> Hi,
>
> I'm trying to pass multiple query criteria from form controls. I'm using
> the following type of syntax for the criteria:
>
> Like Nz([Forms]![ViewEdit Completed Procedures]![SelectOBy],"*")
>
> And this works fine for the fields where there are no Nulls in the data,
> but if there are Nulls in this field I don't get those records. Quite
> understandable since Like "*" doesn't return Nulls.
>
> What I'm trying to do is to return all records when there is nothing
> chosen in the selection box on the form. I've tried a bunch of different
> IIfs with various use of quote marks, on the order of:
>
> IIf(IsNull([Forms]![ViewEdit Completed Procedures]![SelectOBy]),"Not Is
> Null Or Is Null",[Forms]![ViewEdit Completed Procedures]![SelectOBy])
>
> but they either don't get all the records or they kick a "too complex"
> error.
>
> I'm sure this must be easier than I'm making it. Could anyone give me
> some help?
>
> Thanks in advance,
>
> Sue


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Selection query with MAX(textfield) return null value if the matching record more than 2501 records Chlaris Microsoft Access 6 11th Jan 2010 07:01 AM
Query criteria - exclude data and return all records if null CS Microsoft Access Queries 3 9th Sep 2009 06:49 PM
Query criteria to return records with null value in field? =?Utf-8?B?U3RhciBUYXlsb3I=?= Microsoft Access Queries 1 11th Apr 2007 04:52 PM
If criteria is null return all =?Utf-8?B?S3Jpemhlaw==?= Microsoft Access Queries 4 9th Mar 2006 04:07 PM
Criteria to Display All Records Null and Is Not Null =?Utf-8?B?Sm9obkx1dGU=?= Microsoft Access Reports 3 17th Feb 2005 02:27 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 01:38 AM.