[AccessD] Create a Search

Kevin Waddle thewaddles at sbcglobal.net
Mon Aug 9 00:48:19 CDT 2004


Virginia,
This works well for me...
I'll try to break down my spaghetti code.

I have an Events Log mdb where users enter significant events.

The table contains, among other things, the fields:
EventDate (When did it happen)
Reporter (Who logged it)
Notes (What happened)

The search form contains fields (Text or ComboBox) for:
BeginningDate (A TextBox populated with the Calendar Control)
EndingDate (A TextBox populated with the Calendar Control)
Reporter (A ComboBox pulling data from a Table with Authorized
Reporters)
Notes (A TextBox populated with the search string for the Notes Field)



The code below creates a string to use as the "WhereCondition" in the
DoCmd.OperReport command.
The string ends up being...
Where...
EventDate >= Forms!Main!beginningdate.value and EventDate <=
Forms!Main!endingdate.value and reporter = 'Waddle SMS' and notes Like
'*' & Forms!Main!txt_notes.value & '*' and category1 Like '*' &
Forms!Main!txt_category.value & '*'

'*** Code Start ***
Private Sub SearchReport_Click()
On Error GoTo Err_SearchReport_Click
Dim stDocName As String
Dim stLinkCriteria As String
Dim DateError As Variant
Dim strREPORTER As String
Dim strFollowup As String
    
    If txt_Reporter.Value <> "" Then
    strREPORTER = " and reporter = '" & txt_Reporter.Value & "'"
    Else
    strREPORTER = ""
    End If
    
    If chkFollowup = -1 Then
    strFollowup = " and followup =  -1"
    Else
    strFollowup = ""
    End If
    
    
    stDocName = "LogBook"
    stLinkCriteria = "EventDate >= Forms!Main!beginningdate.value and "
_
        & "EventDate <= Forms!Main!endingdate.value" & strREPORTER

If EndingDate.Value < BeginningDate.Value Then
DateError = msgbox("You have entered an ENDING DATE that is " & Chr(13)
_
& "earlier than the BEGINNING DATE" _
& Chr(13) & Chr(13) _
& "Enter a New Date", _
vbCritical + vbOKOnly, "Date Error")

BeginningDate.Value = Date
EndingDate.Value = Date
BeginningDate.SetFocus
Else
    stDocName = "LogBook"
    stLinkCriteria = "EventDate >= Forms!Main!beginningdate.value and "
_
        & "EventDate <= Forms!Main!endingdate.value" _
        & strREPORTER & strFollowup
    If txtNotes.Value <> "" Then
        stLinkCriteria = stLinkCriteria & " and notes Like '*' &
Forms!Main!txtNotes.value & '*'"
    End If
    If txtCategory.Value <> "" Then
        stLinkCriteria = stLinkCriteria & " and category1 Like '*' &
Forms!Main!txtCategory.value & '*'"
    End If
    DoCmd.OpenReport stDocName, acViewPreview, , stLinkCriteria
    DoCmd.Maximize
    
End If
Exit_SearchReport_Click:
    Exit Sub

Err_SearchReport_Click:
    Debug.Print Err.Number & " " & Err.Description
    Resume Exit_SearchReport_Click
End Sub
-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of
Hollis,Virginia
Sent: Thursday, July 29, 2004 4:48 AM
To: 'accessD at databaseadvisors.com'
Subject: [AccessD] Create a Search


Does anyone have an example of creating a report by selecting search
criteria from fields? I had a request today to add a custom report
builder to one of my databases.

 

Some of the fields will be text where they can enter what they need and
other criteria will be from a combobox, they also want a date range
field. Then! they want to be able to save the criteria for later use.

 

For example - Document number - text box, Document type will be a
combobox. I want to know all the documents created during a certain
month, quarter, year, etc.).

 

I have tried something like this several times, but when it comes to
having more than one search criteria, I can never seem to make it work -
then adding a date on top of that - well, I am lost.

 

Thanks,

Virginia

-- 
_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.721 / Virus Database: 477 - Release Date: 7/16/2004
 




More information about the AccessD mailing list