I have got multiple controls on a form in Microsoft Access Project which could be a mixture of entries & blank fields (like a selection screen) as follows:
and this is my final SQL query
Is this at all possible, as I want the form to be where people can restrict on certain things but not others by leaving them blank. As this currently works where if one of the fields is blank, it returns no data.
Kind Regards
Carly Simpson
PHP:
Public Function cmdUListOfDelNotes()
DoCmd.SetWarnings False
Dim cnn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim param1 As ADODB.Parameter, param2 As ADODB.Parameter, param3 As ADODB.Parameter, _
param4 As ADODB.Parameter, param5 As ADODB.Parameter, param6 As ADODB.Parameter, _
param7 As ADODB.Parameter, param8 As ADODB.Parameter, param9 As ADODB.Parameter
Set cnn = CurrentProject.Connection
Set cmd.ActiveConnection = cnn
cmd.CommandText = "[Qry U List Of Delivery Notes]"
cmd.CommandType = adCmdStoredProc
Set param1 = cmd.CreateParameter("@OrderType", adChar, adParamInput, 3)
cmd.Parameters.Append param1
param1.Value = [Forms]![Frontpage]![cboOrderType]
Set param2 = cmd.CreateParameter("@DespatchDate1", adDBDate, adParamInput)
cmd.Parameters.Append param2
param2.Value = [Forms]![Frontpage]![txtDespatchDate1]
Set param3 = cmd.CreateParameter("@DespatchDate2", adDBDate, adParamInput)
cmd.Parameters.Append param3
param3.Value = [Forms]![Frontpage]![txtDespatchDate2]
Set param4 = cmd.CreateParameter("@Priority", adInteger, adParamInput)
cmd.Parameters.Append param4
param4.Value = [Forms]![Frontpage]![txtPriority]
Set param5 = cmd.CreateParameter("@CreateDate1", adDBDate, adParamInput)
cmd.Parameters.Append param5
param5.Value = [Forms]![Frontpage]![txtCreateDate1]
Set param6 = cmd.CreateParameter("@CreateDate2", adDBDate, adParamInput)
cmd.Parameters.Append param6
param6.Value = [Forms]![Frontpage]![txtCreateDate2]
Set param7 = cmd.CreateParameter("@WaveID", adInteger, adParamInput)
cmd.Parameters.Append param7
param7.Value = [Forms]![Frontpage]![txtWaveID]
Set param8 = cmd.CreateParameter("@Status1", adInteger, adParamInput)
cmd.Parameters.Append param8
param8.Value = [Forms]![Frontpage]![txtStatus1]
Set param9 = cmd.CreateParameter("@Status2", adInteger, adParamInput)
cmd.Parameters.Append param9
param9.Value = [Forms]![Frontpage]![txtStatus2]
''CHECKING IF TABLES EXIST''
RefreshDatabaseWindow
If TblExists("tbl U List Of Delivery Notes") Then
DoCmd.RunSQL ("DROP TABLE [tbl U List Of Delivery Notes]")
Else
End If
cmd.Execute
End Function
PHP:
SELECT wcs_order_id, wcs_order_type, wcs_original_branch, wcs_cust_name, wcs_req_desp_date, wcs_priority, wcs_create_time, wcs_wcs_wave_id, wcs_wave_name, wcs_status, wcs_carrier_id
INTO dbo.[tbl U List Of Delivery Notes]
FROM dbo.wcs_arco_order
WHERE (wcs_order_type = @OrderType) AND (wcs_req_desp_date BETWEEN @DespatchDate1 AND @DespatchDate2) AND (wcs_priority = @Priority) AND (wcs_wcs_wave_id = @WaveID) AND (wcs_create_time BETWEEN @CreateDate1 AND @CreateDate2) AND (wcs_status BETWEEN @Status1 AND @Status2)
GROUP BY wcs_order_id, wcs_order_type, wcs_original_branch, wcs_cust_name, wcs_req_desp_date, wcs_priority, wcs_create_time, wcs_wcs_wave_id, wcs_wave_name, wcs_status, wcs_carrier_id
Kind Regards
Carly Simpson