Tengo una pantalla para el registro de carreras y otra para el registro de materias y necesito que al registrar una materia, de un combo pueda seleccionar la carrera a la que pertenecerá dicha materia ¿como puedo hacerle para que el combo se llene con las carreras ya registradas?
Cita de: Lupiss en 29 Junio 2006, 20:34 PM
Tengo una pantalla para el registro de carreras y otra para el registro de materias y necesito que al registrar una materia, de un combo pueda seleccionar la carrera a la que pertenecerá dicha materia ¿como puedo hacerle para que el combo se llene con las carreras ya registradas?
bueno la cosa queda en programar el click si es que tienes las materias en un combo también ... xd
la cosa esta en enviar una sentencia pidiendo las carreras asociadas a esa materia.... como no explicas como tienes las tablas sql... pues no te puedo poner la consulta pero sería algo asi...
alfanumérico
"select carrera from carreras where materia like '" & loqueseacarrera.loquesea & "'"
numérico
"select carrera from carreras where materia =" & loqueseacarrera.loquesea
'con eso solo seleccionas de tu base de datos de las carreras que corresponden a la materia seleccionada
como nose si estas trabajando con un control o con objetos... pues la cosa esta un poco confusa...
//objetos
'se supone que ya has creado los objetos y tal
'rec=recordset cmd=command consulta=sentencia a enviar,lo anterior xd
cmd.commandtext=consulta
set rec=cmd.execute
//ahora llenas el combo
while not rec.eof
variable=rec.fields("carrera")
cbocarreras.additem variable
rec.next
wend
' o algo asi.... xd
Hola
Declaro una variable a nivel de formulario de tipo conexión
Dim Cn as adodb.Connection
Al cargar el formulario abro un recordset y lleno el combo.
Fíjate que hago
dbcombo1.additem "" & rec!NombreTotal
De esa forma aunque NombreTotal fuera null no tendría error, como máximo guardaría una entrada en blanco
Fíjate que al seleccionar un dato del combo siempre tienes el código que te permite acceder a la totalidad del registro en
combo1.itemdata(combo1.listindex)
sub form_load
Dim Rec as adodb.Recordset
Set Cn=new adodb.Connection
Cn.open " ... connectionstring ..."
Set Rec=new adodb.Recordset
Rec.open "select codigo, ape1+" "+nombre as NombreTotal where poblacion='Madrid' order by ape1"
do while not rec.eof
combo1.additem "" & rec!NombreTotal
combo1.itemdata(combo1.newindex) = "" & rec!codigo
rec.movenext
loop
rec.close
end sub
Al cerrar el formulario cerrar la conexión
sub form_unload
Cn.close
end sub
Un saludo
;D