Hola foreros... tengo un problemilla que me tiene vuelto loco... y debe de ser una bobada, pero tengo algunas horas queriéndolo resolver y nada, no veo el error...
Tengo una consulta la cual funciona bien, pero a la hora de recorrer con un RS los registros, pongo una condición para que en cierto momento me mande a otra consulta... pongo el código para que vean de qué hablo:
Código:
<%
for j=1 to 4
DBresp.open "Select A.respuesta, B.Posrespuesta, B.Punpreg From ((Respuestas A left join Posrespuesta B on (A.Idpregunta = B.Idpregunta)) left join Preguntas C on (A.Idpregunta = C.Idpregunta)) left join Regcontestada D on (A.Idcont = D.Idcont) Where A.respuesta = '"& j &"' and A.Idpregunta = "& i &" and B.Punpreg = "& j &" and C.Idpregunta = "& i &" and D.Carrera = '"& idinst &"' Group By A.respuesta, B.Posrespuesta, B.Punpreg", Con 'Where A.Idpregunta = 4 and B.Punpreg = 3 and C.Idpregunta = 4
Do While not DBresp.eof
'd = DBresp("Punpreg")
If (DBresp("Punpreg") < 5) Then
response.Write DBresp("Posrespuesta")
DBresp.movenext
%><br /><%
flag = 1
Else
flag = 2 '<---- no entra cuando Punpreg > 4
End If
loop
DBresp.Close
Next
If (flag = 2) Then '<---- por lo tanto no se ejecuta
for j=5 to 5
DBresp.open "Select A.respuesta From (Respuestas A left join Regcontestada B on (A.Idcont = B.Idcont)) Where B.carrera ='"& idinst &"' and A.Idpregunta = "& i, Con
Do While not DBresp.eof
response.Write DBresp("respuesta")
DBresp.movenext
%><br /><%
loop
DBresp.Close
Next
End If
%><br /><%
Next
%>
pero como ven, cuando trato de ejecutar el ELSE, este pasa de largo y nada que me cambia la variable flag a 2.
¿Alguién que vea el error que no estoy viendo?
GRacias....