Function recordSearch(controlname As Control, PeopleID As Integer)
Dim db As Database
Dim rs As DAO.Recordset
Dim rs1 As DAO.Recordset
Dim sqlstr As String
Dim sqlstrnames As String
Dim inputstring As String
Dim strsearch As String
Dim ctlcontrol As Control
Dim strcontrol As String
Dim strreccount As Integer
Dim strcontrolname As String
Dim frm As Form
'DoCmd.Hourglass True
Application.SetOption "Default Find/Replace Behavior", 2
'On Error GoTo ErrRecordSearch
sqlstr = "SELECT [StreetNo] & ' ' & [StreetName] AS Address, tblPeople.PeopleID, tblPeople.LastName, " & _
"tblPeople.FirstName, tblPeople.EmailAddress, tblPhone.PhoneNumber, tblRelationships.Relationship " & _
"FROM tblAddress INNER JOIN (tblRelationships RIGHT JOIN ((tblFamily INNER JOIN " & _
"tblPeople ON tblFamily.FamilyID = tblPeople.FamilyID) LEFT JOIN tblPhone ON tblPeople.PeopleID = " & _
"tblPhone.PeopleID) ON tblRelationships.PKRelationship = tblPeople.PKRelationship) ON " & _
"tblAddress.AddressID = tblFamily.AddressID "
Set ctlcontrol = controlname
strcontrol = ctlcontrol.Name
inputstring = InputBox("Find:", "Search")
If inputstring <> "" Then
Set frm = Forms("Neighborhood Input Form")!People.Form
Select Case strcontrol
Case frm!FirstName.ControlSource
sqlstr = sqlstr & "WHERE (((tblPeople.FirstName)= '" & inputstring & "')) "
Case frm!LastName.ControlSource
sqlstr = sqlstr & "WHERE (((tblPeople.LastName) like '*" & inputstring & "')) "
Case frm!EmailAddress.ControlSource
sqlstr = sqlstr & "WHERE (((tblPeople.EmailAddress)='" & inputstring & "')) "
Case frm.Form![Phone]!PhoneNumber.ControlSource 'this is on a sub-subform
sqlstr = sqlstr & "WHERE (((tblPhone.PhoneNumber)='" & inputstring & "')) "
End Select
sqlstr = sqlstr & "ORDER BY tblFamily.AddressID, tblPeople.PKRelationship "
Debug.Print sqlstr
Set db = CurrentDb
Set rs = db.OpenRecordset(sqlstr)
rs.MoveLast
strreccount = rs.RecordCount
rs.MoveFirst
Debug.Print strreccount
If Not rs.BOF And Not rs.EOF Then
Set rs1 = Forms![Neighborhood Input Form].RecordsetClone
If strreccount = 0 Then
MsgBox "No records found."
ElseIf strreccount = 1 Then
Forms![Neighborhood Input Form].bookmark = rs1.bookmark
Else
'open frmResults
DoCmd.OpenForm "frmResults"
'set recordsource to sqlstr
Set Forms!frmResults!lboResults.Recordset = CurrentDb.OpenRecordset(sqlstr)
End If
rs1.Close
rs.Close
Set rs1 = Nothing
Set rs = Nothing
Set frm = Nothing
End If
End If
Exit_RecordSearch:
Set ctlcontrol = Nothing
DoCmd.Hourglass False
Exit Function
ErrRecordSearch:
MsgBox Err.Description
Resume Exit_RecordSearch
End Function