Cálculo de plazas oposición
Publicado por Francisco (2 intervenciones) el 31/08/2011 18:06:13
Hola a todos,
Necesito cruzar varias tablas para obtener el resultado de unas oposiciones.
En principio he creado 3 tablas:
Tabla_opositores
La tabla con un registro para cada opositor (ordenada por puntuación)[
Campos:
Tabla_destinos
(El listado de destinos que cada opositor escoge en orden de preferencia personal)
Campos:
Tabla_Plazas
(Las plazas que hay para cada destino).
Campos:
¿Como puedo calcular el destino final de cada opositor?
Si lo hiciera manualmente tendría que ordenar el listado por puntuaciones, tomar el primer DNI, buscar los destinos que hay en el orden escogido y comprobar el primero, si tiene plazas vacantes asignarlo al opositor en el campo Destino final, caso contrario pasar al segundo destino escogido, y así hasta llegar al final de la lista (¿tal vez con un array?).
Hace tiempo que no toco la programación y me estoy complicando la vida.
Agradecido de antemano y esperando haberme explicado bien,
Francisco
Necesito cruzar varias tablas para obtener el resultado de unas oposiciones.
En principio he creado 3 tablas:
Tabla_opositores
La tabla con un registro para cada opositor (ordenada por puntuación)[
Campos:
Nombre
DNI
Puntuación
Destino final (que será el resultado de la operación)
Tabla_destinos
(El listado de destinos que cada opositor escoge en orden de preferencia personal)
Campos:
DNi
Destinos
Tabla_Plazas
(Las plazas que hay para cada destino).
Campos:
Destino
Numero_places
¿Como puedo calcular el destino final de cada opositor?
Si lo hiciera manualmente tendría que ordenar el listado por puntuaciones, tomar el primer DNI, buscar los destinos que hay en el orden escogido y comprobar el primero, si tiene plazas vacantes asignarlo al opositor en el campo Destino final, caso contrario pasar al segundo destino escogido, y así hasta llegar al final de la lista (¿tal vez con un array?).
Hace tiempo que no toco la programación y me estoy complicando la vida.
Agradecido de antemano y esperando haberme explicado bien,
Francisco
Valora esta pregunta
0