%
'Marcamos esta página para que no se guarde en la cache del equipo
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
'Creamos la conexion con la base de datos.
Set dbConn = Server.CreateObject("ADODB.Connection")
dbConn.Open bd_web
'Recuperamos los datos necesarios para obtener la clasificación
carrera = Request.QueryString("carrera")
if carrera = "" then carrera = 0 end if
parcial = Request.QueryString("parcial")
clasificacion = Request.QueryString("clasificacion")
dorsal = Request.QueryString("dorsal")
nombre = Request.QueryString("nombre")
apellidos = Request.QueryString("apellidos")
pagina = Request.QueryString("pagina")
'Obtenemos los datos de la carrera
sqlCarrera = "SELECT * FROM resultados_carreras WHERE CodCarrera = " + cstr(carrera) + ";"
set rsCarrera = Server.CreateObject("ADODB.Recordset")
rsCarrera.Open sqlCarrera, dbConn
if not rsCarrera.EOF then
if rsCarrera("CarreraActiva") then
'Si existe la carrera, comprobamos si hay que seleccionar el punto de control y la clasificación por defecto
if parcial = "" then parcial = rsCarrera("ParcialMeta")
if clasificacion = "" then
'Si no se indica la clasificación deseada, se obtiene la predeterminada de la base de datos
sqlPredeterminada = "SELECT * FROM resultados_clasificaciones WHERE CodCarrera = " + cstr(carrera) + " AND Predeterminada = True;"
set rsPredeterminada = Server.CreateObject("ADODB.Recordset")
rsPredeterminada.Open sqlPredeterminada, dbConn
if not rsPredeterminada.EOF then
'Recuperamos el código de la clasificación predeterminada
clasificacion = rsPredeterminada("CodClasificacion")
else
'Si no hay ninguna predeterminada, seleccionamos la primera
clasificacion = 1
end if
'Liberamos la memoria utilizada
set rsPredeterminada = nothing
end if
if pagina = "" then pagina = 0 end if
'Obtenemos el listado de puntos de cronometraje
sqlParciales = "SELECT * FROM resultados_configuracioncarreras WHERE CodCarrera = " + cstr(carrera) + " ORDER BY CodParcial desc;"
set rsParciales = Server.CreateObject("ADODB.Recordset")
rsParciales.Open sqlParciales, dbConn
'Obtenemos el listado de clasificaciones disponibles
sqlClasificaciones = "SELECT * FROM resultados_clasificaciones WHERE CodCarrera = " + cstr(carrera) + " ORDER BY CodClasificacion asc;"
set rsClasificaciones = Server.CreateObject("ADODB.Recordset")
rsClasificaciones.Open sqlClasificaciones, dbConn
%>
<%
'Preparamos la query para obtener los datos
sqlResultados = query + " p.CodCarrera = " + cstr(carrera) + " AND CodParcial = " + cstr(parcial)
if dorsal<>"" then
'Si han introducido un número de dorsal
sqlResultados = sqlResultados + " AND c.dorsal = '" + trim(cstr(dorsal)) + "'"
end if
if nombre<>"" then
'Si se ha introducido algún caracter en el campo nombre, se buscan todos aquellos corredores que tengan parte de esta cadena en el campo nombre
sqlResultados = sqlResultados + " AND c.nombre like '%" + trim(cstr(nombre)) + "%'"
end if
if apellidos<>"" then
'Si se ha introducido algún caracter en el campo apellido, se buscan todos aquellos corredores que tengan parte de esta cadena en el campo apellidos
sqlResultados = sqlResultados + " AND c.apellidos like '%" + trim(cstr(apellidos)) + "%'"
end if
if dorsal="" and nombre="" and apellidos="" then
'Si no se está utilizando el buscador, utilizamos la función de paginación
sqlResultados = sqlResultados + " AND " + paginador + cstr(pagina)
end if
sqlResultados = sqlResultados + " ORDER BY Puesto ASC"
set rsResultados = Server.CreateObject("ADODB.Recordset")
rsResultados.Open sqlResultados, dbConn
'Si los resultados son definitivos y tenemos una dirección para los diplomas, generamos una nueva columna para el enlace con este documento
if rsCarrera("Provisionales")=0 and not isNull(rsCarrera("Diploma")) and rsCarrera("Diploma")<>"" then
%>
<%
end if
%>
<%
'Inicializamos la variable que indica el color del fondo de la línea de la tabla
lineaImpar = true
do while not rsResultados.EOF
'Establecemos el color del fondo de la línea
if lineaImpar then
%>
<%
'Si los resultados son definitivos y tenemos una dirección para los diplomas, ponemos el icono correspondiente al diploma y enlazamos con la página del documento
if rsCarrera("Provisionales")=0 and not isNull(rsCarrera("Diploma")) and rsCarrera("Diploma")<>"" then
if rsResultados("ClasificacionDefinitiva")>0 then
%>
<%
'Movemos el cursor al siguiente registro
rsResultados.MoveNext
'Cambiamos el valor de la variable de control del color del fondo de las líneas
lineaImpar = not lineaImpar
loop
%>