Autor Tema: ¿Cómo asigno el resultado de consulta de access a un combo box en VB.net?  (Leído 3111 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Angel_Caido

  • Trade Count: (0)
  • MiembrosReales
  • *
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Mensajes: 26
Esto es para una tarea en la que estoy colaborando.
Resulta que el problema está de la siguiente manera:
Tengo una base de datos creada con access que contiene las siguientes tablas y campos para una tienda de accesorios de teléfonos:
[Tabla: categorias]
 categoria - texto
[Tabla: marcas]
 marca - texto
[Tabla: Existencias]
 id - numérico
 categoria - texto
 marca - texto
 modelo - texto
 cantidad - numerico

El caso es que he creado un formulario con los siguientes elementos [omito los label]:
comboCategorias, combobox que despliega las categorías de productos que se venden: Protectores, audífonos, cargadores, etc.
comboMarcas, combobox que despliega las marcas disponibles en la tienda.
comboModelo, acá debe mostrar el contenido del campo <modelo> de la tabla "existencias"

He logrado que comboCategorias muestre el contenido del campo <categoria> de la tabla "categorias"; lo mismo he hecho con el comboMarcas que toma los datos del campo <marca> de la tabla "marcas".
Lo que quiero hacer es que al elegir una opción en comboCategorias y comboMarcas se ejecute un consulta en la tabla "existencias" y filtre solo aquellos registros que coincidan con la categoría y el modelo que se elija en el formulario, luego ese resultado lo muestre en el comboModelo. Es decir que el contenido de este último elemento se estaría actualizando cada vez que cambie la selección en los otros 2 comboboxes.
¿Alguien que me pueda ayudar con este problemita que ya me tiene chino?
Muchas Gracias de antemano.

Desconectado fre_saga

  • Trade Count: (0)
  • Sv Member
  • ***
  • Thank You
  • -Given: 0
  • -Receive: 17
  • Mensajes: 275
Re:¿Cómo asigno el resultado de consulta de access a un combo box en VB.net?
« Respuesta #1 : noviembre 04, 2012, 03:53:18 pm »
no entiendo muy bien lo q quieres hacer
~ hasta el momento logras llenar el combo  categoria
   
lo q pretendes es q al seleccioner una categoria te llene el combo marcas 
una ves selecciones marcas te muestre los productos de esa marca

Desconectado tekun

  • -^- Elite Silver -^-
  • Trade Count: (1)
  • The Communiter-
  • *
  • Thank You
  • -Given: 53
  • -Receive: 101
  • Mensajes: 3218
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:¿Cómo asigno el resultado de consulta de access a un combo box en VB.net?
« Respuesta #2 : noviembre 07, 2012, 02:44:40 pm »

ta fácil, los combo box tienen un evento llamado SelectIndexChanged que se dispara cada vez que se cambia un valor.. crea un procedimiento con la consulta a la tabla existencias que retorne todos los modelos que coincidan con la categoria y marca de los combobox anteriores.

en el evento SelectIndexChanged del comboCategorias y comboMarcas, agrega el procedimiento de consulta.

en el procedimiento de consulta, debes validar que haya un valor seleccionado en los comboBox de categorias y marcas...

lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado murraybozinsky

  • Trade Count: (0)
  • Sv Jr.
  • **
  • Thank You
  • -Given: 1
  • -Receive: 1
  • Mensajes: 54
Re:¿Cómo asigno el resultado de consulta de access a un combo box en VB.net?
« Respuesta #3 : noviembre 07, 2012, 03:30:33 pm »
Citar
los combo box tienen un evento llamado SelectIndexChanged que se dispara cada vez que se cambia un valor

Es correcto, en ese evento se programa el código para ejecutar el query. tendría que ser en los 2 combobox y para asegurar que funcione talvez sea bueno configurar las propiedades VAlueMember y DisplayMember  en los combobox Categorias y Marcas. (aunque no es neceario ya que no ultilizas un campo codigo en categorias y marcas) entonces asi podrias armar el query mas o menos
"Select modelo from Existencias Where categoria = '" & me.combocategorias.text & "' and marca = '" & me.combomarcas.text & "'"