Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

base de datos en visual basic 6

Estas en el tema de base de datos en visual basic 6 en el foro de Visual Basic clásico en Foros del Web. hola a todos! Quisiera que me ayudaran para saber como conectar un flexgrid a una base de datos y al mismo tiempo filtrar dicha informacion.... ...
  #1 (permalink)  
Antiguo 14/11/2005, 17:19
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
base de datos en visual basic 6

hola a todos!
Quisiera que me ayudaran para saber como conectar un flexgrid a una base de datos y al mismo tiempo filtrar dicha informacion....
supongamos.... tengo un combo box y selecciono un nombre de algun cliente(de una tabla de clientes)... y que en la flexgrid aparezcan todas las facturas que ha hecho ese cliente (de la tabla facturas)...

como puedo conectar el comboBox a la base de datos (a un campo especifico) y que me despliegue dicho campo de todos los registros??.. lo hago con un data y me pone solo el que este seleccionado en data y no todos...

gracias a todos! =)
  #2 (permalink)  
Antiguo 14/11/2005, 18:27
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Cita:
como puedo conectar el comboBox a la base de datos (a un campo especifico) y que me despliegue dicho campo de todos los registros??.. lo hago con un data y me pone solo el que este seleccionado en data y no todos...
Lo que podes hacer es esto:
Código:
RecordSet.MoveFirst
Do While Not RecordSet.EOF
	Combo1.AddItem RecordSet.Fields("campo")
	RecordSet.MoveNext
Loop
Saludos
  #3 (permalink)  
Antiguo 14/11/2005, 18:39
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
gracias... otra molestia

disculpa jc moty, la verdad es que estoy muy imbecil para est aún...
mm ese código va en el comboBox?....

ya salen todos los datos de ese campo...de todos los registros... gracias...

ahora como podría hacer que el flexGrid se rellene con información del cliente seleccionado (por ejemplo)?

... por eso quería en msn , seria mas rapido

oye, de verdad gracias! =)

me estas ayudando mucho..jeje te debo una

Última edición por raveko; 14/11/2005 a las 19:03
  #4 (permalink)  
Antiguo 14/11/2005, 19:57
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Cita:
disculpa jc moty, la verdad es que estoy muy imbecil para est aún...
mm ese código va en el comboBox?....
Esto va en el evento Activate del Form.
  #5 (permalink)  
Antiguo 14/11/2005, 20:13
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
gracias jc moty!...

muchas gracias jc!
de verdad me estas ayudando mucho... son cosas que no habia podido encontrar como resolverlas y me estas resolviendo mis dudas!...

oye, otra pregunta mas, espero no molestarte...
para relacionar la eleccion que se hace en el comboBox y desplegar la informacion relacionada (de otra tabla) a un flexGrid...como puedo hacer?
supongamos:

tengo una tabla clientes con datos de muchos clientes...
tambien tengo una tabla de pedidos de clientes, con caracteristicas de cada pedido..., (un cliente puede hacer muchos pedidos).
al seleccionar un cliente de el comboBox quisiera desplegar en un flexGrid todos los pedidos que ha hecho ese cliente y controlar los anchos de columna.

Gracias!!!!!!!! pasaré esa materia gracias a ti!!!
  #6 (permalink)  
Antiguo 14/11/2005, 20:20
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Bueno, a decir verdad no utilizo mucho la FlexGrid, pero la he estado travesiando un poco y aqui esta la solucion de tu poblema:
Código:
' En la Parte General - Declaraciones; o sea por encima de todos los eventos pone esto
Dim db As Database

' En el Load del Form
Private Sub Form_Load()
Set db = OpenDatabase(App.Path & "\nombre de la base de datos.mdb")
End Sub

' Y finalmente en el evento Click del Combo
Private Sub Combo1_Click()
Set Data2.Recordset = db.OpenRecordset("SELECT * FROM Pedidos WHERE campo LIKE '" & Combo1 & "'")
End Sub
Ojo: la propiedad DataSource del FlexGrid debe ser igual al nombre del Data que hace referencia a la tabla Pedidos.
Que en mi caso es Data2

Cita:
controlar los anchos de columna.
Para hacer esto la Propiedad AllowUserResizing debe ser igual a 1 - flexResizeColumns

Espero te sirva

Última edición por jc_moty; 14/11/2005 a las 20:28
  #7 (permalink)  
Antiguo 14/11/2005, 21:02
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
muchas gracias jc me falta algo :?

gracias por ayudarme...

soy nefasto en esto... que pena
me causa un error que dice así:
"pocos parámetros se esperba 1"

no sé a que se pueda deber esto
agradezco tu interés y ayuda...

p.d. tienes buen slogan
  #8 (permalink)  
Antiguo 14/11/2005, 21:11
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Porque no posteas el codigo que utilizas a ver en que te puedo ayudar; y señala la linea en la que te da ese error.

  #9 (permalink)  
Antiguo 14/11/2005, 21:41
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
aqui esta el código, gracias

Dim db As Database

Private Sub Combo1_Click()
Set Data1.Recordset = db.OpenRecordset("SELECT * FROM Juguete WHERE campo LIKE '" & Combo1 & "'") <---- Aqui marca el error

End Sub

Private Sub Command1_Click()
perrita.Show

End Sub

Private Sub Command2_Click()
End
End Sub



Private Sub Form_Activate()
Data1.Recordset.MoveFirst

Do While Not Data1.Recordset.EOF
Combo1.AddItem Data1.Recordset.Fields("descripcion")
Data1.Recordset.MoveNext
Loop
End Sub


Private Sub Form_Load()
Set db = OpenDatabase(App.Path & "Jugueteria.mdb")

End Sub
  #10 (permalink)  
Antiguo 14/11/2005, 22:03
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Código:
Private Sub Combo1_Click()
Set Data1.Recordset = db.OpenRecordset("SELECT * FROM Juguete WHERE campo LIKE '" & Combo1 & "'") '<-- Aqui marca el error
End Sub
Bien, es mas facil de lo que crees. El error esta en la palabra campo, esta la tenes que sustituir por el nombre del campo que vas a comparar, es decir que si el campo con el que queres comparar el Combo se llama nombre, tenes que poner esto:
Código:
Private Sub Combo1_Click()
Set Data1.Recordset = db.OpenRecordset("SELECT * FROM Juguete WHERE nombre LIKE '" & Combo1 & "'")
End Sub
Esta demas mencionar que el campo "nombre" tiene que estar en la tabla "Jugete".
Otra cosa:
cambia esta linea:
Código:
Set db = OpenDatabase(App.Path & "Jugueteria.mdb")
por:
Código:
Set db = OpenDatabase(App.Path & "\Jugueteria.mdb")
Tenes que agregar la barra invertida (\) ¿Porque?, porque App.Path devuelve el directorio del proyecto, es decir que si tu proyecto esta guardado en C:\VB; App.Path devolvera la siguiente cadena: "C:\VB" y si lo concatenas con "Jugeteria.mdb", el resultado seria: "C:\VBJugeteria.mdb", este archivo (VBJugeteria.mdb) evidentemente no existe. Ahora bien, si concatenas App.Path con "\Jugeteria.mdb", el resultado seria: "C:\VB\Jugeteria.mdb" ¿Ves la diferencia?.

Última edición por jc_moty; 14/11/2005 a las 22:15
  #11 (permalink)  
Antiguo 14/11/2005, 22:16
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
ya esta!!!!!!!!!!!!!

muchas gracias jc ya quedó!!!!!!!

de verdad te agradezco que compartas tus conocimientos...
en realidad espero poder ayudarte en lo que pueda si algun dia necesitas algo de ayuda... (bueno aunque solo conozco c, pero sé usar programas de diseño gráfico como photoshop, illustrador o corel...de verdad en lo que pueda ayudarte sera un placer! =) ).

vale.... a que hora te conectas usualmente?... por si me surge alguna duda??
mi msn es: [email protected]

no solo me salvas el pellejo a mi sino tambien a mi novia, jeje estamos en la clase juntos...
gacias de nuevo! =)
  #12 (permalink)  
Antiguo 14/11/2005, 22:23
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Cita:
vale.... a que hora te conectas usualmente?...
Pues, no tengo una hora establecida, pero si no me encontras deja tu post por aqui, casi siempre, me doy una vuelta en las noches...o bien me mandas un mensaje privado.

Saludos
  #13 (permalink)  
Antiguo 15/11/2005, 20:30
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 18 años, 5 meses
Puntos: 0
alguno de utedes me puede ayudar porfavor
  #14 (permalink)  
Antiguo 15/11/2005, 20:34
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 18 años, 5 meses
Puntos: 0
como se pasa una base de datos a DAO plz msg
  #15 (permalink)  
Antiguo 15/11/2005, 20:35
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 18 años, 5 meses
Puntos: 0
Jc Moty Plz Ayuda Raveko Ayuda
  #16 (permalink)  
Antiguo 16/11/2005, 07:16
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Que paso XG105?, porque no creas un nuevo tema detallando mas a fondo tus dudas, para que sea mas facil ayudarte.

Saludos
  #17 (permalink)  
Antiguo 10/05/2008, 21:00
 
Fecha de Ingreso: mayo-2008
Mensajes: 5
Antigüedad: 16 años
Puntos: 0
De acuerdo Re: base de datos en visual basic 6

Hola jc_moty me es grato saludarte y confieso que estoy admirado por tus conocimientos de programacion en visual basic me encantaria, si no es mucha molestia claro q en un futuro me puedas dar algunos consejos sobre visual basic la verdad es q soy muy nuevo en esto pero tengo muchas ganas de aprender si puedes agrega mi correo soy de Peru [email protected] y mi correo en este foro es LuisLuther, espero tu respuesta con ansias
  #18 (permalink)  
Antiguo 30/11/2008, 14:45
 
Fecha de Ingreso: noviembre-2008
Mensajes: 1
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: base de datos en visual basic 6

Hola Jc - moty...

quisiera saber si hay una forma de que en visual basic 6.0 se ponga dos combo box(pais - ciudad) jalados de una base de datos access 2000

y que en el momento de seleccionar un pais de un combobox en el otro solo aparezcan ciudades de ese pais....

pd: las tablas ciudades y paises se encuentran en tablas separadas...

te agradeeria mucho tu ayude ya que no se que hacer



Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 5 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 20:30.