У меня есть форма, которая показывает информацию о компании, а также подчиненную форму с несколькими контактами, которая показывает контактную информацию, разделенную на обязанности по работе с контактами (вкладка).
У меня есть поле со списком в форме компаниикоторый отображает должностные обязанности, и после выбора ответственности будут отображаться только записи компании с контактом выбранной ответственности.Это код;
Sub SetFilter()
Dim ASQL As String
If IsNull(Me.cboshowcat) Then
' If the combo and all check boxes are Null, use the whole table as the RecordSource.
Me.RecordSource = "SELECT company.* FROM company"
Else
ASQL = "SELECT company.* FROM company INNER JOIN Contacts ON company.company_id = Contacts.company_id WHERE Contacts.responsibility= '" & cboshowcat & "'"
Form_Startup.RecordSource = ASQL
End If
End Sub
В таблице компаний будут отображаться только записи с контактами типа, указанного в поле со списком cboshowcat, без отображения дублирующих компаний в главной форме.
Затем я хочу применить некоторые дополнительные фильтры на основе флажков в главной форме, которые относятся к полям в подчиненной форме контактов.Они активируются кнопкой вместе с кодом источника записи сверху;
Private Sub Command201_Click()
If Nz(Me.cboshowcat) = "" And Me.Check194 = True Or Nz(Me.cboshowcat) = "" And Me.Check199 = True Or Nz(Me.cboshowcat) = "" And Me.Check205 = True Then
MsgBox "Please Select a Job Responsibility"
Cancel = True
Else
SetFilter
If Me.Check194 = True Then
Me.Filter = "cedit <=Date()-90"
Me.FilterOn = True
Else
Me.Filter = ""
Me.FilterOn = False
If Me.Check199 = True Then
Me.Filter = "((copt)='No')"
Me.FilterOn = True
Else
Me.Filter = ""
Me.FilterOn = False
If Me.Check205 = True Then
Me.Filter = "exsite is null"
Me.FilterOn = True
Else
Me.Filter = ""
Me.FilterOn = False
End If
End If
End If
End If
End Sub
В данный момент кнопка отфильтровывает выбранные контакты по категории, но если установлено более 1 флажка, используется только один изфильтры.Как сделать так, чтобы в нем использовалось несколько фильтров, в зависимости от того, какой флажок установлен?