okay here it is...
Private Sub RunDynamicQuery()
Dim sPeriod As String
Dim sTransType As String
Dim sStatus As String
Dim sRevFlag As String
Dim sTransOrigin As String
Dim sBN As String
Dim sReport As String
Dim sqlString As String
sPeriod = txtPeriod
sTransType = txtTransactionType
sStatus = txtStatus
sRevFlag = txtReversalFlag
sTransOrigin = txtTransactionOrigin
sBN = txtBusinessNumber
sqlString = "SELECT " & cmbTableFile & ".Period, " & cmbTableFile & ".BN, " & cmbTableFile & ".Name, "
txtReportToRun.SetFocus
sReport = txtReportToRun.Text
' Concatenate the rows to be shown
Select Case sReport
Case "Report1"
sqlString = sqlString & cmbTableFile & ".TransType, " & cmbTableFile & ".Amount, " & cmbTableFile & ".GrantAmount "
Case "Report2"
sqlString = sqlString & cmbTableFile & ".TransType, " & cmbTableFile & ".Status, " & cmbTableFile & ".ReversalFlag, " & cmbTableFile & ".BnCount "
Case "Report3"
sqlString = sqlString & cmbTableFile & ".TransType, " & cmbTableFile & ".Status, " & cmbTableFile & ".BnCount, " & cmbTableFile & ".Contribution, " & cmbTableFile & ".GrantAmount, " & cmbTableFile & ".EAPAmount, " & cmbTableFile & ".EAPGrantAmount, " & cmbTableFile & ".PSEAmount "
Case "Report4"
sqlString = sqlString & cmbTableFile & ".ErrCount "
Case "Report5"
sqlString = sqlString & cmbTableFile & ".TransType, " & cmbTableFile & ".BnCount "
Case "Report6"
sqlString = sqlString & cmbTableFile & ".RecordCount "
Case "Report7A"
sqlString = sqlString & cmbTableFile & ".TransOrigin, " & cmbTableFile & ".TransType, " & cmbTableFile & ".ReversalFlag, " & cmbTableFile & ".BnCount "
Case "Report7B"
sqlString = sqlString & cmbTableFile & ".TransOrigin, " & cmbTableFile & ".ReversalFlag, " & cmbTableFile & ".BnCount "
Case "Report8"
sqlString = sqlString & cmbTableFile & ".Amount "
Case "Report9"
sqlString = sqlString & cmbTableFile & ".Amount "
End Select
sqlString = sqlString & "FROM " & cmbTableFile & _
" WHERE (" & cmbTableFile & ".Period = " & sPeriod & ")"
' Concatenate the And Clause
If txtTransactionType.Enabled Then
txtTransactionType.SetFocus
If txtTransactionType <> "*" Then
sqlString = sqlString & " AND " & cmbTableFile & ".TransType = '" & txtTransactionType.Text & "'"
End If
End If
If txtStatus.Enabled Then
txtStatus.SetFocus
If txtStatus <> "*" Then
sqlString = sqlString & " AND " & cmbTableFile & ".Status = '" & txtStatus.Text & "'"
End If
End If
If txtReversalFlag.Enabled Then
txtReversalFlag.SetFocus
If txtReversalFlag <> "*" Then
sqlString = sqlString & " AND " & cmbTableFile & ".ReversalFlag = '" & txtReversalFlag.Text & "'"
End If
End If
If txtTransactionOrigin.Enabled Then
txtTransactionOrigin.SetFocus
If txtTransactionOrigin <> "*" Then
sqlString = sqlString & " AND " & cmbTableFile & ".TransOrigin = '" & txtTransactionOrigin.Text & "'"
End If
End If
If txtBusinessNumber.Enabled Then
txtBusinessNumber.SetFocus
If txtBusinessNumber <> "*" Then
sqlString = sqlString & " AND " & cmbTableFile & ".BN = '" & txtBusinessNumber.Text & "'"
End If
End If
'Dim cnn As New ADODB.Connection
'Dim cmd As ADODB.Command
'Set cnn = CurrentProject.Connection
'Set cmd = New ADODB.Command
'With cmd
' .CommandText = sqlString
' .ActiveConnection = cnn
' .Execute
'End With
'Set cmd = Nothing
'Set cnn = Nothing
Debug.Print sqlString
DoCmd.RunSQL sqlString
End Sub
--> sqlstring will result into the string you see from the first post --> because of the criterias I chose
thanks for looking at the code david
tc3of4
The funny thing is when I copy the output from the debug (the sql string) and paste it in a new query (using the sql) it runs... but for some reason running dynamic queries through code is not working...
it is not recognizing the sql statement
-------
error i received
[Run-Time Error '2342'
A RunSQL action requires an argument consisting of an SQL statement.]
[This message has been edited by tc3of4 (edited 05-02-2002).]