Visual Basic - Sobre busqueda en msflex grid

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

Sobre busqueda en msflex grid

Publicado por Josbel Gonzalez (32 intervenciones) el 16/12/2008 15:41:53
Buenas a todos, antes que nada gracias por tomarse un tiempo para leer, veran tengo el siguiente problema estoy realizando una aplicacion sencilla de visual basic con bases de datos ado ya tengo la conexion sin problemas, ahora tengo un formulario en donde hay un control de msflexgrid, el cual toma los datos de una tabla de la base de datos que son simplemente los registros de los clientes ahora me pasa lo siguente primero que nada el msflexgid me muestra todas las columnas de la tabla de la cual yo solo necesito mostrar algunas de ellas pues es un formulario de consulta y la otra incognita es que a travez de un text box que esta en el formulario, filtre por ejemplo el nombre del cliente que al tipearlo en el mismo solo muestre las coincidencias en el ms flex grid les agradesco cualquier ayuda por favor y gracias de antemano por todo lo que puedan guiarme
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:Sobre busqueda en msflex grid

Publicado por P3L30N (699 intervenciones) el 16/12/2008 16:07:40
Para la primera incognita
Haces una consulta de selección en un recordset y le pones el recorset en la propiedad DataSource del Grid.

Para la segunda incognita
En el evento Change del TextBox renuevas la consulta con un WHERE campo LIKE '" & TextBox & "%'"
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
sin imagen de perfil

RE:Sobre busqueda en msflex grid

Publicado por Josbel Gonzalez (32 intervenciones) el 16/12/2008 16:21:12
gracias por la ayuda, disculpa de verdad mi ignorancia pero seria posible un codigo mas explicito?, entiendo cuando te refieres a realizar la consulta bueno hasta cierto punto, por eso te consuto como podria realizarlo
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:Sobre busqueda en msflex grid

Publicado por P3L30N (699 intervenciones) el 16/12/2008 16:52:41
puedes poner como te conectas a la base de datos y ómo enlazas la tabla al FlexGrid?
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
sin imagen de perfil

RE:Sobre busqueda en msflex grid

Publicado por josbel (32 intervenciones) el 16/12/2008 17:50:27
en el formulario

en el form load

Call ENLAZARBASE

y en un modulo

Option Explicit

Dim RUTA As String

Public MIBASE As Database
Public TREGISTRO As Recordset
Public TLISTAPRODUCTO As Recordset
Public TTURNO As Recordset
Public TASIGNADO As Recordset
Public TLISTA As Recordset


Public Sub ENLAZARBASE()

RUTA = "" & App.Path & "GENERAL.MDB"
Set MIBASE = OpenDatabase(RUTA)
Set TREGISTRO = MIBASE.OpenRecordset("REGISTRO")
Set TLISTAPRODUCTO = MIBASE.OpenRecordset("LISTAPRODUCTO")
Set TTURNO = MIBASE.OpenRecordset("COLATURNO")
Set TASIGNADO = MIBASE.OpenRecordset("COLAASIG")
Set TLISTA = MIBASE.OpenRecordset("LISTAPRODUCTO")

End Sub


de esa forma tengo conectada la base de datos claro esta en componentes del programa tengo activada la opcion de microsoft dao 2.51/3.01 library

esto es es esencia la manera en que tengo conectada la base de datos
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:Sobre busqueda en msflex grid

Publicado por P3L30N (699 intervenciones) el 16/12/2008 18:11:34
En ese código no identifico cual es la tabla de clientes, pero la vamos a llamar "TablaClientes"

El código en síntasis sería así:

Private Sub Text1_Change()
Dim strSQL As String
strSQL = "SELECT * FROM TablaClientes WHERE NombreCliente LIKE '" & Text1.Text & "*'"
Set rs = MIBASE.OpenRecordset(strSQL)
End Sub

No aconsejo trabajar con DAO (ya que es una tecnología de acceso a datos obsoleta), pero menos con la versión que mencionas, porque si intentas abrir una BD Access superior a la versión 97, te va a dar error.

Mejor marca la referencia a DAO 3.6
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