Visual Basic - Problema con Data1.Refresh

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Problema con Data1.Refresh

Publicado por Adolfo (117 intervenciones) el 01/12/2002 16:29:09
Hola amigos:
Tengo un DBGrid conectado a una tabal de una BD de Access, y un combobox de donde selecciona si quiero que en el DBGrid aparezcan solo los productos de la tabla que paga impuesto o que no pagan impuesto respectivamente. Esto lo hago de la siguiente manera:

Private Sub Combo1_Click()
If Combo1.Text = "SI" Then
Data1.RecordSource = "SELECT * FROM Productos WHERE ImpuestoProd = True ORDER BY NombreProd"
ElseIf Combo1.Text = "NO" Then
Data1.RecordSource = "SELECT * FROM Productos WHERE ImpuestoProd = False ORDER BY NombreProd"
End If
* Data1.Refresh
DBGrid.ReBind
end sub

Pero si la tabla no tiene (por ejemplo) productos que NO pagen impuesto, y yo selecciono NO en el Combobox, el procedimiento me da un mensaje de error en la linea que marqué con un asterisco (*)
*Data1.Refresh

El mensaje de error es el siguiente:
Run-time error '3061'
Too few parameters. spected 1

Como puedo hacer para que si la condición que coloque en el SELECT no se cumple, el programa pueda mostrar un mensaje de error diciendo algo así como:
MsgBox "No hay ningun producto que NO page impuestos"

Muchas Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con Data1.Refresh

Publicado por Fernando (166 intervenciones) el 01/12/2002 17:28:52
La verdad a simple vista no se me ocurre nada para eso, pero lo que pienso es, por que no capturas ese error? cuando te aparezca el error 3061, le pones un mensaje que diga que no se encontraron los datos especificados, no te parece?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con Data1.Refresh

Publicado por JorgeChasis (88 intervenciones) el 02/12/2002 13:19:32
Probaste a ponerle el refresh dentro del if? Puede que sea por eso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar