Visual Basic - BD en ComboBox

Life is soft - evento anual de software empresarial
 
Vista:

BD en ComboBox

Publicado por Heiner gomez (19 intervenciones) el 25/06/2009 16:18:51
Amigos, soy yo de nuevo y necesito ayuda.

tengo una base de datos que se llama inventario.mdb y una tabla que se llama proveedores y un control Data que e llama Data1

quiero que los nombres de los probedores (es un campo de la tabla) salgan en mi combo box como puedo hacerlo?
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:BD en ComboBox

Publicado por jaime guerrero (361 intervenciones) el 25/06/2009 17:50:06
primero, debes tener un metodo que se conecte a la base de datos.

luego en tu load pones

dim cn as adodb.connection
dim rs as adodb.recordset

set cn=conectaraccess

set rs=new adodb.recordset

With rs
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockOptimistic
End With

rs.open "select nombre from proveedores", cn, 3, 3

if rs.eof=false then
for i=0 to rs.recordcount-1
combo1.additem rs!nombre
rs.movenext
end if

rs.close
set rs=nothing

cn.close
set cn=nothing


Public Function ConectarAccess() As ADODB.Connection
dim cn As ADODB.Connection

Set cn = New ADODB.Connection

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & CStr(rutaAccess) & ";User Id=admin;Password=;"

cn.Open

Set ConectarAccess = cn
End Function

con esto tu combo ya esta lleno
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

A preguntas necias ...

Publicado por El feo (1 intervención) el 25/06/2009 19:30:21
... respuestas más necias todavía.
obvio que ya sabe que debe conectarse a la base de datos. creo bastaba con decirle que usara el método AddItem del ComboBox para agregar los nombres de los proveedores. voy a tomar patre de tu código:

rs.open "select nombre from proveedores", cn, 3, 3
Do While Not rs.EOF
' si quieres, según te mala costumbre de comparar con "0" los valores
' lógicos (o Booleans) también podría ser:
' Do While rs.EOF = False
combo1.AddItem rs!Nombre
rs.MoveNext
Loop

ahora bien ¿no sería mejor que usara un DataCombo (con la propiedad DataSource adecuada), para que no se molestara en usar AddItem, recorriendo todos los registros? cuestión de gustos
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:A preguntas necias ...

Publicado por jaime guerrero (361 intervenciones) el 25/06/2009 19:34:41
y pa concha necios que dicen que saben. no es asi el feo.

Si no vas a aportar nada mejor no escribas.

y para contestar tu pregunta sobre el datacombo. No recomiendo usarlo ya que debes mantener tu conexion a la base de datos activa y esto provoca que se ponga lento el sistema. Las personas que saben sobre programacion no usamos ese control, porque para un buen sistema no se debe tener la conexion abierta siempre. SOLO cuando es necesario.
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:A preguntas necias ...

Publicado por Heiner gomez (19 intervenciones) el 30/06/2009 15:01:15
Amigos Gracias ya pude hacerlo ya tengo los datos en mi CBO muchas gracias
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