Tengo una base de datos access, quiero hacer una consulta poniendo un texbox y un commandboton

Tengo una base de datos access, quiero hacer una consulta poniendo un texbox y un commandboton para que el usuario tlecle para consultar pero sin usar el control data, el resultado de la consulta lo quisiera reflejar en un control flexgrid como seria el código me podrías dar un ejemplo por favor me urge para mañana tengo que presentar un avance del programa por favor ayudame soy nuevo en esto, podría ser con DAO por que con ADO no le agarro la onda

1 respuesta

Respuesta
1
A ver un consejo...
Si es para algunas pruebas que estas haciendo vos y quieres aprender a hacerlo... no hay problema, pero si es para un trabajo o algo... te recomiendo que uses los controles, ya que estos manejan perfectamente los errores y todo eso... de ultima lo pones invisible.
Por código tienes con codificar todos los casos..
Por ejemplo si estas en el ultimo registro de la base.. si vas a tener que poner que se quede en el ultimo porque ya no hay más... no se si me explico bien...
Los controles hacen esas validaciones solos...
No es solamente crear el control por código y usarlo exactamente igual, tienes que controlas los movimientos con código...
Ejemplo con ADO
Necesitas 2 variables
Private cnn As ADODB.Connection
' Necesitamos los eventos si queremos controlar algunas cosillas
Private rstEmpleados As ADODB.Recordset
y luego no se porque pero tambien necesita configurarle varias propiedades
Set cnn = New ADODB.Connection
Set rstEficiencia = New ADODB.Recordset
With cnn
.CursorLocation = adUseClient
.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source= " & bdPath & ";"
.Open
End With
luego a la conexion
rstEmpleados.CursorLocation = adUseClient
rstEmpleados.recordsource = "SELECT * FROM tabla"
ahora con DAO
debes declarar
Public bd As Database
Dim sqlBuscar As String
dim rsUsuarios as recordset
Set bd = OpenDatabase("direccion de tu tabla")
sqlBuscar = "SELECT grp_usuario.nro_grupo From usuarios INNER JOIN grp_usuario ON usuarios.lgn_usuario = grp_usuario.lgn_usuario WHERE (((usuarios.lgn_usuario)='" & txtLoginUsuario.Text & "') AND ((usuarios.psw_usuario)='" & txtPasswordUsuario.Text & "'));"
Set RSUsuario = bd.OpenRecordset(sqlBuscar, dbOpenForwardOnly)
Con ado es más fácil porque completa automáticamente las grillas con dao no se porque pero se reniega
with adoClientes
.RecordSource = seleccionSQL
.Refresh
End With
Set flxClientes.DataSource = adoClientes
Tal vez sea necesario colocar el refresh en el msflex

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas