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

ayuda con mi programa(añadir registros)

Estas en el tema de ayuda con mi programa(añadir registros) en el foro de Programación General en Foros del Web. Hola buenas. Estoy realizando un programa en VB6 con el cual quiero llevar el control de una serie de empleados y unos cursos que se ...
  #1 (permalink)  
Antiguo 10/05/2004, 08:04
 
Fecha de Ingreso: marzo-2004
Mensajes: 24
Antigüedad: 20 años, 8 meses
Puntos: 0
ayuda con mi programa(añadir registros)

Hola buenas. Estoy realizando un programa en VB6 con el cual quiero llevar el control de una serie de empleados y unos cursos que se imparten.
Mi situacion es la siguiente, tengo 3 tablas en access "EMPLEADOS", "CURSOS" y "PROFESORES". Lo unico que quiero hacer con este programa es añadir nuevor cursos, para lo cual tengo que introducir el profesor que lo ha impartido y los empleados que han asistido. Me gustaria que alguien me explicara de la manera mas sencilla posible como puedo hacer esto. Lo e intentado de muxas maneras pero tengo el problema de que en un mismo campo de la tabla "CURSOS" no puedo añadir una lista de 50 nombres. Lo que me gustaria es que se relacionaran de alguna manera o que se hicieran referencia el uno al otro. Ya que la finalidad del programa es hacer consultas entre si como por ejemplo
-Haciendo click en un curso que me aparezcan los empleados que han asistido.
-Haciendo click en un empleado me aparezcan los cursos que ha realizado...etc
Muxas gracias a todos. Ciao
  #2 (permalink)  
Antiguo 10/05/2004, 10:04
Avatar de juagarc4  
Fecha de Ingreso: octubre-2003
Ubicación: En casa
Mensajes: 127
Antigüedad: 21 años, 1 mes
Puntos: 0
A ver, a ver, en primer lugar debes tener claro las bases de Datos relacionales y saber que es lo que van a almacenar sus tablas y sobretodo ¡como! se van a almacenar los datos.
Supongo que habrás oido hablar de las Relaciones entre tablas y los índices de dichas relaciones (de 1 a 1, de 1 a Muchos, de Muchos a 1, de Muchos a muchos, etc...)
Bien si no estoy entendiendo mal, lo que quires es un esquema relacional como esté:

1 .- 1 Curso lo imparte 1 solo PROFESOR
2 .- 1 PROFESOR puede impartir MUCHOS CURSOS
3 .- A 1 CURSO asisten MUCHOS EMPLEADOS.
4 .- 1 EMPLEADO puede asistir a MUCHOS CURSOS

De forma que tienes 2 relaciones:

En 1 y 2 -->RELACIÓN 1 a MUCHOS entre PROFESOR y CURSOS
Para solucionar esta relación pon un campo "IdProfe" en la tabla CURSOS, y ahi almacenarás el Id del Profesor que imparte el curso. (esa ID corresponderá con la ID que tendrás en la tabla PROFESORES y que seguramente será la clave principal)

En 3y 4 tienes otra relación más compleja, es una relación MUCHOS A MUCHOS.
Para Solucionar esta relación necesitas una tabla Intermedia, que puedes llamar Asistencia, donde tendrás 2 campos (IDCurso de la tabla CURSOS ( y el ID del empleado, que será también clave principal)
Las relaciones que se crean serán

Código:
PROFESORES      CURSOS 
 [IDProfe]  -------> [IdProfe]

EMPLEADOS         ASISTENCIA               CURSOS
[IDEMPLEADO]----->[IDEMPLEADO]
                     [IDCURSOS]<---------[IDCURSO]
Luego en el código ya te las tienes que ingeniar para que cuando des de alta un curso, seleccionar de un Combo (por ejemplo) un Profesor y cuando guardes los datos Grabes en la tabla curso los datos del CURSO y solo el ID del Profesor (que recogeras del Combo)
Y cuando quieras dar de alta empleados que han asistido al curso, solo deberás guardar el IDCurso y el IDEmpleado (que se supone que ya existe) en la tabla ASISTENCIA.
Te pondría el código entero, pero es demasiado largo para postearlo aquí, mándame un mail a [email protected] y te mando un ejemplito que tengo por ahi, ¿ok?
Espero, por lo menos haberte dado alguna pista de como hacerlo.

Salu2.
__________________
El que pregunta lo que no sabe, es ignorante durante 5 minutos, el que no lo pregunta lo es de por vida (Proverbio Chino)
La tonteria se pone siempre en primera fila, para ser vista. La inteligencia se pones siempre detrás para poder ver. (Alguien lo dijo, seguro)

Última edición por juagarc4; 10/05/2004 a las 10:08
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 23:01.