SoloCodigo
Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Jorge López en Domingo 26 de Enero de 2003, 16:15
-
Private Sub combobox_onclick()
SET A= BASE.OPENRECORDSET("SELECT * FROM EMPLEADOS WHERE NAME LIKE '" & combobox.text & "'",DBOPENDYNASET)
If Not a.EOF Then
textboxcargo.text = a("cargo")
textboxhorario.text = a("horario")
End If
Set A = Nothing
End Sub
hola a todos, tengo un combobox con los datos del campo nombre de mi tabla empleaados, lo que quiero es que al seleccionar un nombre del combo me muestre en los textbox respectivos el cargo del empleado y el horario de trrabajo, tengo este codigo pero me dice que "POCOS PARAMETROS, SE ESPERA 1"
-
Pregunta:
Quieres que en un Combo se muestre los nombres de los empleados y que al seleccionar con un click, a dicho empleado del Combo, automáticamente se muestre en todos los TextBox del Form el registro de este Empleado, es decir, todos los demás campos del registros.
Lo único que he hecho con el ComboBox es algo así como lo que indico, pero no sé si sea eso.
-
si lo que quiero es que al selecionar el empleado, me muestre el cargo y el horario de trabajo en los textbox
-
Que bueno, ya tengo imagen, pero la firma aun no sale, pero bueno, ya arreglaremos eso.
Este es un pequeño ejemplo que tengo hecho y es el siguiente:
'Las respectivas variables:
Dim BD As Database
Dim Rs As Recordset
Set BD = OpenDatabase(App.Path + "BaseDatos.mdb")
Set Rs = BD.OpenRecordset("Select * From Cliente Order by Nombre")
If Rs.RecordCount > 0 Then
Rs.MoveFirst
Do While Not Rs.EOF
Combo1.AddItem Rs.Fields!Nombre
Rs.MoveNext
Loop
Combo1.ListIndex = 0
End If
Actualizando_Combo
'Rs.Close
'BD.Close
End Sub
Tengo esto en el botón Guardar:
Rs.AddNew
Rs!Nombre = TxtNombre.Text
Rs!Apellido = TxtApellido.Text
Rs!Telefono = TxtTelefono.Text
Rs.Update
Do While Not Rs.EOF
Combo1.AddItem Rs.Fields!Nombre
Rs.MoveNext
Loop
Actualizando_Combo
MsgBox "Guardado"
Encapsulé esto para llamarlo varias veces:
Private Sub Actualizando_Combo()
Combo1.Clear
If Rs.RecordCount > 0 Then
Rs.MoveFirst
Do While Not Rs.EOF
Combo1.AddItem Rs.Fields!Nombre
Rs.MoveNext
Loop
Combo1.ListIndex = 0
End If
End Sub
Private Sub Combo1_Click()
Rs.MoveFirst
Rs.Move Combo1.ListIndex
TxtNombre.Text = Rs.Fields!Nombre
TxtApellido.Text = Rs.Fields!Apellido
TxtTelefono.Text = Rs.Fields!Telefono
End Sub
Private Sub Combo1_Change()
TxtDato.Text = Combo1.ListIndex
End Sub
Pero esto funciona por un truco que tiene el cual es un TextBox de nombre TxtDato.Text el cual está invisible, pero al menos funciona. No tengo mucho manejo del Combo para esto, pero con eso del TextBox invisible, el Combo le pasa el dato y desde ahí es más fácil, por lo que para que funcione esto, tienes que poner un TextBox invisible de nombre TxtDato.text en alguna parte del Form.
Ojala te sirva o te de una idea, bueno.