I have a table set up like this
ClassID (pk)
ClassName
ParentClassID
And of course another like this
ItemID (PK)
ClassID (FK)
ItemName
for example,
ClassID ClassName ParentClassID
1 .........Vegetable.......null
2 ......... Meat............ null
3 ......... Drink............ null
4 ......... Pork ............. 2
5 ......... Coke ............ 3
6 ........ dietCoke......... 5
7 ...... springwater ...... 3
ItemID ClassID ItemName
1 ......... 3 ......... A
2 ......... 5 ......... B
3 ......... 6 ......... c
4 ......... 7 ......... D
Now I'm trying to add a search function to my form.
When I search for "drink" I want it to return all the items belong to "drink", so in this case it would be A,B,C,D, but the code I'm using (pleas see the quote below) only returns me "A" because it only puts "ClassID=3" to the filter.
ClassID (pk)
ClassName
ParentClassID
And of course another like this
ItemID (PK)
ClassID (FK)
ItemName
for example,
ClassID ClassName ParentClassID
1 .........Vegetable.......null
2 ......... Meat............ null
3 ......... Drink............ null
4 ......... Pork ............. 2
5 ......... Coke ............ 3
6 ........ dietCoke......... 5
7 ...... springwater ...... 3
ItemID ClassID ItemName
1 ......... 3 ......... A
2 ......... 5 ......... B
3 ......... 6 ......... c
4 ......... 7 ......... D
Now I'm trying to add a search function to my form.
When I search for "drink" I want it to return all the items belong to "drink", so in this case it would be A,B,C,D, but the code I'm using (pleas see the quote below) only returns me "A" because it only puts "ClassID=3" to the filter.
Any suggestions?Private Sub Class_AfterUpdate()
Call CheckFilter
End Sub
Private Sub CheckFilter()
Dim strFilter As String, strOldFilter As String
strOldFilter = Me.Filter
'Class - Numeric
If Me!CLass > "" Then _
strFilter = strFilter & _
" AND ([Class ID]=" & _
Me!CLass & ")"
'Debug.Print ".Filter = '" & strOldFilter & "' - ";
'Debug.Print "strFilter = '" & strFilter & " '"
'Tidy up results and apply IF NECESSARY
If strFilter > "" Then strFilter = Mid(strFilter, 6)
If strFilter <> strOldFilter Then
Me.Filter = strFilter
Me.FilterOn = (strFilter > "")
End If
End Sub