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 de kieleze
1
1
kieleze, Estudio ingenieria en sistemas, estoy en 3º año
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