• Miércoles 15 de Mayo de 2024, 05:40

Autor Tema:  Re: ERROR EN COMBO_CLICK  (Leído 1511 veces)

Jorge López

  • Miembro MUY activo
  • ***
  • Mensajes: 118
    • Ver Perfil
Re: ERROR EN COMBO_CLICK
« en: Domingo 26 de Enero de 2003, 16:15 »
0
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"
Un fracasado es un hombre que ha cometido un error pero que no es capaz de convertirlo en experiencia.

José D

  • Miembro MUY activo
  • ***
  • Mensajes: 235
    • Ver Perfil
Re: ERROR EN COMBO_CLICK
« Respuesta #1 en: Domingo 26 de Enero de 2003, 18:22 »
0
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.
Saludos

Jorge López

  • Miembro MUY activo
  • ***
  • Mensajes: 118
    • Ver Perfil
Re: ERROR EN COMBO_CLICK
« Respuesta #2 en: Domingo 26 de Enero de 2003, 18:36 »
0
si lo que quiero es que al selecionar el empleado, me muestre el cargo y el horario de trabajo en los textbox
Un fracasado es un hombre que ha cometido un error pero que no es capaz de convertirlo en experiencia.

José D

  • Miembro MUY activo
  • ***
  • Mensajes: 235
    • Ver Perfil
ERROR EN COMBO_CLICK
« Respuesta #3 en: Domingo 26 de Enero de 2003, 18:50 »
0
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.
Saludos