Programación General > Bases de Datos
Filtrar Datos
(1/1)
don_leopardo:
Buenas. En un programa de control de stock ke tengo ke hacer necesito hacer un filtro de datos. La cosa es asi: El usuario ingresa el Rubro del proveedor, pone Buscar, y le aparecen todos los proveedores de ese rubro. Hice el codigo de esto, con una instruccion SQL, pero no me anda, no me tira nada. Kisiera saber cual es el error, ya ke me parece ke puede estar en la concatenacion de la variable. El codigo es el sgte:
--- Código: Text --- Private Sub CmdBuscarR_Click()Dim Rubro As String Rubro = FrmProveedores.TxtBRubro.Text If DataEnvironment2.rsCommand1.State = 1 ThenDataEnvironment2.rsCommand1.CloseEnd If DataEnvironment2.rsCommand1.Source = "SELECT * FROM Proveedores WHERE Rubro = " [COLOR=green]'&Rubro&' ""[/COLOR]End Sub
El final lo puse en verde porke asi aparece en el Visual. Desde ya les agradezco.
EDIT: Bueno, parece ke no se puede poner en verde adentro del codigo, o al menos no me dejo, pero igual lo dejo para ke vean ke es lo ke aparece en ese color.
Saludos.
jc_moty:
Porque no cambias el signo '=' por 'LIKE', tene en cuenta que si pones "=" la cadena tiene que coincidir completamente (mayusculas, minusculas, texto completo, etc), sin embargo si pones LIKE no importa si son mayusculas o minusculas y con el signo '%' le decis que tome en cuenta los rubros que empiecen por lo que esta almacenado en la variable "Rubro", por ejemplo:
--- Código: Text --- DataEnvironment2.rsCommand1.Source = "SELECT * FROM Proveedores WHERE Rubro LIKE '" & Rubro & "%'" Saludos
Angel38:
Hola Leopardo
Cuando programes y te cambien el color de texto en los codigos, debes fijarte bien que estas escribiendo puesto que te puedes estar volando las comillas,no estas cerrando bien o separas mal las instrucciones porque se te olvido la coma.
DataEnvironment2.rsCommand1.Source = "SELECT * FROM Proveedores WHERE Rubro ='&Rubro&' "
Quitandole las instrucciones
Te deberia funcionar, aunque el consejo de Jc es muy practico, esto te lo digo para que lo tengas en cuenta.
ElberGon:
Yo haria esto:
Private Sub CmdBuscarR_Click()
Dim Rubro As String
Dim sql As String ''''''''''''''''''''''''''''''''''''
Rubro = FrmProveedores.TxtBRubro.Text
If DataEnvironment2.rsCommand1.State = 1 Then
DataEnvironment2.rsCommand1.Close
End If
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'si el campo rubro es textual
sql= "SELECT * FROM Proveedores WHERE Rubro = " ' " &Rubro &" ' " 'checalo
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'si el campo rubro es numerico
sql= "SELECT * FROM Proveedores WHERE Rubro = &Val(Rubro) 'checalo
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
DataEnvironment2.rsCommand1.Source =sql ''''''''''''''''''''''''
End Sub
Nota: Los valores de sql solo llevate uno ve tu caso y anlizalo.....
Espero y sirva
Navegación
Ir a la versión completa