• Domingo 17 de Noviembre de 2024, 22:30

Autor Tema:  ComboBox con 2 valores de tabla  (Leído 10643 veces)

blusky

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
ComboBox con 2 valores de tabla
« en: Lunes 7 de Febrero de 2011, 22:09 »
0
Hola a todos!!

He tratado de cargar un combox con 2 valores de un tabla de sql, pero no me sale. Quisiera saber si alguien sabe como hacerlo o es un
componente diferente q hay qu usar para hacer que  cuando se seleccione el combobox, este me muestre 2 campos de mi tabla.
por ejm. el Id_Oficina, NombreOficina.

Solo puedo hacer que se muestre un campo!!!

Necesito ayuda por favor!!

Gracias.

gabio2

  • Miembro MUY activo
  • ***
  • Mensajes: 402
  • Nacionalidad: mx
    • Ver Perfil
Re: ComboBox con 2 valores de tabla
« Respuesta #1 en: Martes 8 de Febrero de 2011, 06:25 »
0
Por que no Concatenas desde tu sentencia SQL?

En MySQL seria algo así..
Código: Text
  1. SELECT CONCAT(Id_Oficina,', ',NombreOficina) AS NombreId  FROM TuTabla;
  2.  

entonces en tu código VB, solo le asignas un DataSource a tu ComboBox, y le pones DisplayMember = "NombreId".

espero hayas entendido, saludos :)
@gabio87

blusky

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
Re: ComboBox con 2 valores de tabla
« Respuesta #2 en: Martes 8 de Febrero de 2011, 22:46 »
0
Hola gabio2!!!

tblEmpleado: idempleado, pnombre,snombre,pape,sape
tblUsuarioVehiculo: noplaca, idempleado


yo cree un metodo para cargar los comboboxes de un sola vez,
tengo 2 tablas una tblEmpleados y la otra tblUsuarioVehiculo.  En usuariovehiculo solo guardo el id del empleado pero yo quiero mostrar en el combobox el id del empleado y el nombre completo de ese mismo!!

este es mi codigo, he tratado pero no le hallo!!

con.CargarComboBox("select tblUsuarioVehiculo.Id_Empleado,(PNombre +' '+SNombre+' '+PApe+' '+SApe) as Nombre from tblUsuarioVehiculo  inner join tblEmpleados on tblUsuarioVehiculo.Id_Empleado= tblEmpleados.Id_Empleado", cboUsuarioPrincipal, "Id_empleado", "Id_Empleado", "tblUsuarioVehiculo")

el valor que esta en negrita es el displaymember, pero no se qu poner si tengo un inner join!!!

espero me puedas ayudar!!
Gracias

blusky

  • Miembro activo
  • **
  • Mensajes: 35
    • Ver Perfil
Re: ComboBox con 2 valores de tabla
« Respuesta #3 en: Martes 8 de Febrero de 2011, 23:00 »
0
Hola!!! Ya lo resolvi!!!  Gracias por tu aporte gabio2.

Dejo el codigo para el que quiera utilizarlo

Public Sub cargaComboEmpleado()
        Dim dtipouso As SqlClient.SqlDataAdapter
        Dim dsdatos As DataSet
        dtipouso = New SqlClient.SqlDataAdapter("select Id_Empleado,(PNombre +' '+SNombre+' '+PApe+' '+SApe) as Nombre from tblEmpleados ", abrirConexion)
        dsdatos = New DataSet
        dtipouso.Fill(dsdatos, "tblEmpleados")
        cboUsuarioPrincipal.DataSource = dsdatos.Tables("tblEmpleados")
        cboUsuarioPrincipal.DisplayMember = dsdatos.Tables("tblEmpleados").Columns("Nombre").ToString
        cboUsuarioPrincipal.ValueMember = dsdatos.Tables("tblEmpleados").Columns("Id_Empleado").ToString
    End Sub