Ver Mensaje Individual
  #3  
Antiguo 22-06-2012
Avatar de jafera
jafera jafera is offline
Miembro
 
Registrado: may 2007
Ubicación: Llagostera (Girona)
Posts: 585
Reputación: 20
jafera Va por buen camino
Gracias Antonio.

Primero felicidades por tus 16 k, pareces un ordenador antiguo, jejeje

En cuanto a tu respuesta, igual es que no me he explicado bien.

Tengo una tabla de la carrera con un ID unico, enlazado a esta la tabla de los inscritos con un campo id_carrera que es igual en las dos tablas, otra tabla de vueltas unida a la tabla carrera por el id_carrera y finalmente una tabla pasos con el campo id_carrera, id_vuelta y dorsal.

Desde el formulario de la carrera creo la cabecera con unos datos basicos, id, fecha, nombre numero de inscritos y numero de vueltas.

Al salir del campo numero de vueltas, genero en la tabla vueltas tantos registros como valor tiene la tabla carrera, es para poder controlar si una vuelta esta cerrada (han pasado todos los corredores, o no y estan doblados).

Ej. ID_Carrera =1, nombre = prueba, categoria= prueba, fecha = hoy numer inscritos 5 numero vueltas 5

En la tabla vueltas oibtengo:
ID ID_CARRERA ID_VUELTA FINALIZADA
1 1 1 N
2 1 2 N
3 1 3 N
4 1 4 N
5 1 5 N

Luego pongo lo inscritos

ID ID_CARRERA DORSAL RETIRADO
1 1 1 N
2 1 2 N
3 1 45 N
4 1 60 N
5 1 70 N

En el afterpost de esta tabla, genero las vueltas

ID ID_CARRERA ID_VUELTA DORSAL
1 1 1 1
2 1 2 1
3 1 3 1
4 1 4 1
5 1 5 1
6 1 1 2
7 1 2 2
Asi hasta que s completa el bucle........
...........
24 1 4 70
25 1 5 70

El problema viene cuando cambio un dorsal en su dbgrid correspondiente, que lo que quiero controlar es que no exista, ya que sinó me lo duplica y no es lo que me interesa precisamente.

Por eso busco con el array que la combinacion carrera, vuelta, dorsal, no exista ya que esta combinacion solo puede darse una vez en toda la tabla.(no pueden haber dos carreras 1, aunque si dos vueltas 1 pero de distintas carreras).

Espero haber sido más claro.

Saludos

Josep

Última edición por jafera fecha: 22-06-2012 a las 21:38:55. Razón: errores ortograficos
Responder Con Cita