Visual Basic - Carga De Combos De Una BD Access

Life is soft - evento anual de software empresarial
 
Vista:

Carga De Combos De Una BD Access

Publicado por Gabriel (30 intervenciones) el 19/05/2006 18:31:45
Hola Saludos A Todos.
Tengo seis combo los cuales despliegan una lista que obtienes de las tablas de las bases de datos .La duda o problema que que tengo es que para cada combo tengo que establecer la conexion con la base de datos lo hice de esta manera.

Sub LlenarCboColor()
*********DESDE AQUI
Set Cn = New ADODB.Connection
Set Rs = New ADODB.Recordset

Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" + App.Path + "\BDNiobeSystem.MDB;" & _
"Persist Security Info=False"
Rs.ActiveConnection = Cn
Rs.CursorType = adOpenKeyset
Rs.LockType = adLockOptimistic
Rs.Open "Select * From Colores Order By NumColor "********HASTA AQUI

If Rs.RecordCount > 0 Then
Rs.MoveFirst
End If
FrmAltaArticulo.CboColor.Clear
FrmAltaArticulo.CboColor.AddItem ""
Usuario = ""
Do Until Rs.EOF
FrmAltaArticulo.CboColor.AddItem Rs!DesColor
On Error GoTo rsError_Handler
Rs.MoveNext
Loop
If Rs.State = adStateClosed Then Rs.Open
Exit Sub

rsError_Handler:
Msg = "Niobe System"
Estilo = vbCritical + vbOKOnly
Titulo = "Error Al Cargar En Tiempo de Ejecución"
MsgBox Msg, Estilo, Titulo
Err.Clear

End Sub

Esto lo repito con cada combo no se si se puede hacer solo una vez la conexion con la BD y hacer todas las consultas con la misma conexion o una sola consulta para todos los combos.
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:Carga De Combos De Una BD Access

Publicado por Juan (93 intervenciones) el 19/05/2006 19:31:44
Si apuntan a diferentes tablas, lo que deberias cambiar es el objeto recordset. El objeto que apunta a la base de datos es el mismo, asi que no tienes que crear uno nuevo. Por otro lado si lo que no quieres es repetir el codigo 6 veces, puedes hacer una funcion que reciba como parametro el combo y lo enlazas a la base de datos.
No se si eso te ayuda un poco?
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