He de filtrar Datos segun los checkbox que tenga selecccionados. Alguien podria darme una idea de como construir la sentencia SQL segun los checkbox que haya marcados?
Lo agradeceria mucho!
| |||
| Sentencia SQL con CheckBoxs He de filtrar Datos segun los checkbox que tenga selecccionados. Alguien podria darme una idea de como construir la sentencia SQL segun los checkbox que haya marcados? Lo agradeceria mucho! |
| |||
| Re: Sentencia SQL con CheckBoxs Nadie ha contestado, es problema de que no me he explicado suficiente en la pregunta? La cuestión es como construir la sentencia SQL segun los checkbox que tenga seleccionados. El típico filtro para visualizar datos! saludos! |
| |||
| Re: Sentencia SQL con CheckBoxs Hola Puedes ir construyendo la select poco a poco según este el estado del checkbox, mas o menos algo así como:
Código:
Es solo una idea, igual puedes adaptarlo a tu código, la idea es ir construyendo la SQL en una variable según tengas el estado de los checkDim sql As String
sql = "Select * from tabla1 where sn="
If Me.Check1.Value = 1 Then
sql = sql & " true"
Else
sql = sql & " false"
End If
--Saludos-- |
| |||
| Re: Sentencia SQL con CheckBoxs Gracias por contestar! Al final he hecho esto, por si a alguien le sirve (el fundamento es el tuyo):
Código:
'Pongo a 0 los contadores
i = 0
totalChk = 0
blnPrimer = True
'Hago las SQL
strCon(0) = "concepto LIKE 'VP%'"
strCon(1) = "concepto LIKE 'TA%'"
strCon(2) = "concepto LIKE 'VA%'"
strCon(3) = "concepto LIKE 'DP%'"
strCon(4) = "concepto LIKE 'DR%'"
strCon(5) = "concepto LIKE 'PK%'"
strCon(6) = "concepto LIKE 'AL%'"
'Cuento los CheckBox que hay Marcados
Do While e <= chkCon.Count - 1
If chkCon(e).Value = 1 Then
totalChk = totalChk + 1
End If
e = e + 1
Loop
Do While i <= chkCon.Count - 1
'Empiezo a crear la SQL
If chkCon(i).Value = 1 Then
' Si es el primero AND ( concepto LIKE...
If blnPrimer = True Then
strSQL = strSQL & "AND (" & strCon(i)
blnPrimer = False
'Si no es el primero: sentencia con OR concepto LIKE...
Else
strSQL = strSQL & " OR " & strCon(i)
End If
End If
i = i + 1
Loop
If totalChk > 0 Then ' Si se ha seleccionado algun CheckBox pongo ")" al final
strSQL = strSQL & ")"
End If
'reestablezco los contadores
i = 0
totalChk = 0
blnPrimer = True
strSQL = "SELECT * FROM tabGastos WHERE empleado_dni ='" & DNI & "' " & strSQL & " ORDER BY fecha"
|