Unable to use filter in datasheet view or add criteria to query indesign view

H

HouBMan

Hello all,

I have a question regarding a custom function. The query results can't
be filtered nor can a criteria be used in the design window to filter/
restrict the records. The function returns the correct answer for all
the cases but I need the functionality to filter the results.

Here is purpose, input and output and example uses:

Purpose:
If given 2 dates, a month and a year, the function returns the number
of days that fall between the start and enddates, in the given month
and year.
Example 1,
My_Function(#1/1/2010#, #1/15/2010#, 1,2010) Returns 14
BTW - 14 is correct because the end date is not considered a full
day; another example:
My_Function(#1/1/2010#, #1/15/2010#, 2, 2010) Returns 0

Input:
StartDate As Date
EndDate As Date
intMonth As Integer
IntYear As Integer
Output:
Integer value

My problem:
The results in the query can't be filtered nor can a criteria be used
in the design window.

Please let me know if you need more detail
 
M

Marshall Barton

HouBMan said:
I have a question regarding a custom function. The query results can't
be filtered nor can a criteria be used in the design window to filter/
restrict the records. The function returns the correct answer for all
the cases but I need the functionality to filter the results.

Here is purpose, input and output and example uses:

Purpose:
If given 2 dates, a month and a year, the function returns the number
of days that fall between the start and enddates, in the given month
and year.
Example 1,
My_Function(#1/1/2010#, #1/15/2010#, 1,2010) Returns 14
BTW - 14 is correct because the end date is not considered a full
day; another example:
My_Function(#1/1/2010#, #1/15/2010#, 2, 2010) Returns 0

Input:
StartDate As Date
EndDate As Date
intMonth As Integer
IntYear As Integer
Output:
Integer value

My problem:
The results in the query can't be filtered nor can a criteria be used
in the design window.


There is something wrong in the query. Poast back with a
Copy/Paste of the query's SQL view.
 
J

John Spencer

You should be able to filter based on the results of the function.

SELECT SomeField, My_Function(#1/1/2010#, #1/15/2010#, 1,2010) as TheResult
FROM SomeTable
WHERE My_Function(#1/1/2010#, #1/15/2010#, 1,2010) = 14

What you cannot do is the following:
SELECT SomeField, My_Function(#1/1/2010#, #1/15/2010#, 1,2010) as TheResult
FROM SomeTable
WHERE TheResult= 14

The latter query does not work because at the time the criteria is applied
"TheResult" column does not yet exist. That is just the way Access (JET) SQL
works.

If this does not explain it for you,
Please copy and post the SQL of your query that does not work. Also please
tell us what error messages you encounter (if any).

(Possibly unneeded instructions follow)
Open the query
Select View:Sql from the Menu
Select all the text
Copy it
Paste it into the message


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

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top