Foros del Web » Programación para mayores de 30 ;) » .NET »

Problema al cargar varios CBO'S con datos de diferentes tablas

Estas en el tema de Problema al cargar varios CBO'S con datos de diferentes tablas en el foro de .NET en Foros del Web. En una aplicación tengo 5 formularios (Teacher, group, hour, subject, classroom) que se relacionan con un sexto formulario donde estos confluyen (class). El form class ...
  #1 (permalink)  
Antiguo 07/11/2011, 10:15
 
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Problema al cargar varios CBO'S con datos de diferentes tablas

En una aplicación tengo 5 formularios (Teacher, group, hour, subject, classroom) que se relacionan con un sexto formulario donde estos confluyen (class).
El form class tiene 5 combobox, cada uno debe llenarse con los datos del combo id de la tabla correspondiente. Por ejemplo, el combobox "cbosubject" del form "class" debe contener los datos de combobox "idsubject" del form subject, de manera que si agrego o elimino un registro de "idsubject" este se agregue o se elimine de igual manera en "cbosubject".
He probado varios métodos y este me dio resultado:

Código:
Sub cargar()
Dim da As New OleDb.OleDbDataAdapter("Select *from Hours", cn)
Dim ds As New DataSet
da.Fill(ds, "Hours")
cbokhour.DataSource = ds.Tables("Hours")
cbokhour.DisplayMember = "IdHour"
no obstante, como necesito 5 combos y no uno, tengo que repetir el código, de esta forma:

Código:
Sub cargar()
Dim da As New OleDb.OleDbDataAdapter("Select *from Hours", cn)
Dim ds As New DataSet
da.Fill(ds, "Hours")
cbokhour.DataSource = ds.Tables("Hours")
cbokhour.DisplayMember = "IdHour"
End Sub
Sub cargar_Teacher()
Dim da As New OleDb.OleDbDataAdapter("Select *from Teachers", cn)
Dim ds As New DataSet
da.Fill(ds, "Teachers")
cbokteacher.DataSource = ds.Tables("Teachers")
cbokteacher.DisplayMember = "IdTeacher"
pero ahí surge un problema: dos subprocesos no pueden tener el mismo nombre, por lo tanto al segundo sub le puse "cargar_teacher()", pero, como le cambie el nombre, ya no cumple la función de cargar, de manera que si depuro el programa e ingreso al combobox "cbokteacher" este aparece en blanco"

Como soluciono este problema, necesito cargar los combos de la manera como lo hago con "cbokhour"

???

Gracias de antemano.
  #2 (permalink)  
Antiguo 07/11/2011, 10:31
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Problema al cargar varios CBO'S con datos de diferentes tablas

Hola seeweed!.
1º Bienvenido al Foro.
2º Quieres cargar todos los combos en 1 solo SUB?. Por favor brindanos un poco mas de información, debido a que no logré entenderlo muy bien.
3º Podrías pasarnos el código del evento en el cual llamas esos SUB?.
Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 07/11/2011 a las 10:48
  #3 (permalink)  
Antiguo 07/11/2011, 17:20
 
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Problema al cargar varios CBO'S con datos de diferentes tablas

Gracias por la bienvenida.
Los 5 combobox del form "Class" deben contener los datos del campo id de el form o tabla correspondiente, me explico: "Subject" es un formulario, desde ese formulario elimino, agrego y modifico "materias del colegio", hay un campo que contiene el "id" de la materia, es decir, básicamente el form "subject" tiene esta estructura:

IdSubject = " " DELETE SUBJECT BUTTON
NameSubject = " " ADD SUBJECT BUTTON

Los datos del IdSubject especificado arriba deben cargarse en el combobox "cbosubject" del form "Class". Por ejemplo, si tengo en "IdSubject" las materias "Sociales" e "Inglés", en "cbsubject" debe aparecer "sociales" e "inglés". Y si elimino "Inglés" en "Idsubject" entonces en "cbosubject" debe aparecer sólo "sociales".

Lo mismo debo hacer con el resto de los combobox del form "Class" (cboteacher, cbogroup, cbohour, cboclassroom). Pero no lo he logrado, debido a que estaba cargando los combos manualmente, sin relaciones, de esta manera:

Código:
 cbokday.Items.Add("Monday")
        cbokday.Items.Add("Tuesday")
        cbokday.Items.Add("Wednesday")
     
        cbokhour.Items.Add("1")
        cbokhour.Items.Add("2")
  
        cbokteacher.Items.Add("C")
        cbokteacher.Items.Add("E")
     
        cbokgroup.Items.Add("9a")
        cbokgroup.Items.Add("9b")
     
        cboksubject.Items.Add("Social")
        cboksubject.Items.Add("Biology")
        cboksubject.Items.Add("Math")
     

        cbokroom.Items.Add("9as")
        cbokroom.Items.Add("9bs")
        cbokroom.Items.Add("9cs")
Como ven, ahí no hay ninguna relación, porque si elimino en el form "Classroom" el registro 9cs, en el combobox "Cbokroom" del form "Class" va a seguir apareciendo "9as,9bs,9cs" y tendría que borrar "9cs" directamente desde el combo para poder hacer efectivos los cambios.

Espero que hayas entendido mejor.
Necesito que los 5 combobox del form "class" carguen los datos del combo "id" del formulario correspondiente de manera dinámica, para que de esa forma, al agregar o eliminar un dato del campo "id" estos cambios sean efectuados en el cbo de "class" correspondiente".

Etiquetas: basic
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:00.