Hi,
I've reposted this as I originally didn't enclose the code properly within code tags.
I’m having a problem with some form filters that were working OK. I’m loading a multi-record form based on a query:
So this pulls in all records with a Call Date within the last 4 days
On the form I have 3 combo boxes.
cboDateFilter is populated when the form loads with the following data:
SELECT DISTINCT format(Q_UpdateRecords.callDate,"short date") FROM Q_UpdateRecords;
This correctly populates the combo box with todays date and the past 3. But when I select one of the dates, it filters out all records. The filters on Customer and Job Type are working perfectly. I’m sure the date filter was working OK before I went on 2 weeks leave!!
Can anyone see what I'm doing wrong??
Cheers
David
I've reposted this as I originally didn't enclose the code properly within code tags.
I’m having a problem with some form filters that were working OK. I’m loading a multi-record form based on a query:
Code:
[/FONT][/COLOR]
[COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Q_UpdateRecords[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]SELECT T_CallDetails.[Reference Number], T_CallDetails.custkey, T_CallDetails.CallDate, T_CallDetails.Name, T_CallDetails.Address, T_CallDetails.[Call In Time], T_CallDetails.[Call Out Time], T_CallDetails.Problem, T_CallDetails.Practice, T_CallDetails.[Deceased Information], T_CallDetails.[Doctor Paged], T_CallDetails.Urgent, T_CallDetails.Contacted, T_CallDetails.Chargable, T_CallDetails.code, T_CallDetails.Telephone, T_CallDetails.Duty, T_CallDetails.Job_Passed, T_CallDetails.B19, T_CallDetails.Job_Type[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]FROM T_CallDetails[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]WHERE (((T_CallDetails.CallDate)>=Date()-3))[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]ORDER BY T_CallDetails.custkey, T_CallDetails.CallDate;[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
So this pulls in all records with a Call Date within the last 4 days
On the form I have 3 combo boxes.
cboDateFilter is populated when the form loads with the following data:
SELECT DISTINCT format(Q_UpdateRecords.callDate,"short date") FROM Q_UpdateRecords;
This correctly populates the combo box with todays date and the past 3. But when I select one of the dates, it filters out all records. The filters on Customer and Job Type are working perfectly. I’m sure the date filter was working OK before I went on 2 weeks leave!!
Code:
[/FONT][/SIZE][/FONT][/COLOR]
[COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Private Sub cboCustomer_AfterUpdate()[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Call FilterJobs[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]End Sub[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Private Sub cboDateFilter_AfterUpdate()[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Call FilterJobs[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]End Sub[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Private Sub cboJobType_AfterUpdate()[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Call FilterJobs[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]End Sub[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Public Sub FilterJobs()[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Dim strFilter As String[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]'The following is a default filter (always true!) just in case the combo selections are blank.[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]'It also means we don't have to deal with getting rid of unwanted "AND" in our filter[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]strFilter = "1=1"[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]If Nz(Me.cboCustomer, "") <> "" Then[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]strFilter = strFilter & " and [custKey]=" & Me.cboCustomer[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]End If[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]If Nz(Me.cboJobType, "") <> "" Then[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]strFilter = strFilter & " and [job_Type]='" & Me.cboJobType & "'"[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]End If[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]If Nz(Me.cboDateFilter, "") <> "" Then[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]'strFilter = strFilter & " and [date]=" & Me.cboDateFilter & ""[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]'strFilter = strFilter & " and format([CallDate], 'mm/dd/yyyy') = " & Format(Me.cboDateFilter, "\#mm/dd/yyyy\#")[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]'strFilter = strFilter & " and CallDate = " & Format(Me.cboDateFilter, "\#dd/mm/yyyy\#")[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]strFilter = strFilter & " and CallDate between " & Format(Me.cboDateFilter, "\#dd/mm/yyyy") & " 00:00:00# and" & Format(Me.cboDateFilter, "\#dd/mm/yyyy") & " 23:59:59#"[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]'strFilter = strFilter & " and [q_updaterecords.Date] = Me.cboDateFilter"[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]End If[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Me.Filter = strFilter[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][FONT=Arial][SIZE=3]Me.FilterOn = True[/SIZE][/FONT][/FONT][/COLOR][COLOR=black][FONT=Verdana]
[/FONT][/COLOR][COLOR=black][FONT=Arial][SIZE=3][FONT=Arial]End Sub[/FONT][/SIZE][/FONT][/COLOR]
[COLOR=black][FONT=Arial][SIZE=3][FONT=Arial]
Can anyone see what I'm doing wrong??
Cheers
David