Buenas, necesito filtrar en una base de datos según las opciones que doy en la imagen.
(https://image.ibb.co/mGPo3S/subir1.png)
Viendo todas las posibilidades he hecho una mega chapuza con if/elseif/else, ya que no veo una forma amigable de poner unos select case ahi.
El resultado es el siguiente:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If ComboBox1.Text <> "Seleccionar usuario" Then
If (DateTimePicker1.Enabled) Then
If (No.Checked = False And Si.Checked) Then
' Query con usuario, fecha, y giros (solo los dados)
ElseIf (No.Checked And Si.Checked = False) Then
' Query con usuario, fecha, y giros (solo los NO dados)
Else
'Query con usuario y fecha
End If
Else
If (No.Checked = False And Si.Checked) Then
' Query con usuario, y giros (solo los dados)
ElseIf (No.Checked And Si.Checked = False) Then
' Query con usuario, y giros (solo los NO dados)
Else
' Query con usuario
End If
End If
Else
If (DateTimePicker1.Enabled) Then
If (No.Checked = False And Si.Checked) Then
' Query con fecha, y giros (solo los dados)
ElseIf (No.Checked And Si.Checked = False) Then
' Query con fecha, y giros (solo los NO dados)
Else
' Query fecha.
End If
Else
If (No.Checked = False And Si.Checked) Then
' Query con giros (solo los dados)
ElseIf (No.Checked And Si.Checked = False) Then
' Query con giros (solo los NO dados)
End If
End If
End If
End Sub
La idea es mandar una consulta diferente a la base de datos en función de que fue lo que se filtró.
Mi pregunta es, ¿hay alguna forma de hacer más eficiente todo esto?