Foros del Web » Programando para Internet » ASP Clásico »

Recorrer varios campos

Estas en el tema de Recorrer varios campos en el foro de ASP Clásico en Foros del Web. Hola, necesito recorrer varios campos con un sólo bucle for. Por ejemplo, si tengo 20 campos CAMPO1, CAMPO2....CAMPO20, ¿Cómo comparo en un solo bucle el ...
  #1 (permalink)  
Antiguo 28/05/2002, 17:00
 
Fecha de Ingreso: enero-2002
Mensajes: 27
Antigüedad: 22 años, 5 meses
Puntos: 0
Recorrer varios campos

Hola, necesito recorrer varios campos con un sólo bucle for.

Por ejemplo, si tengo 20 campos CAMPO1, CAMPO2....CAMPO20, ¿Cómo comparo en un solo bucle el valor de cada campo?

Gracias.
  #2 (permalink)  
Antiguo 29/05/2002, 01:43
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: Recorrer varios campos

Compararlos con respecto a que?
Tiene que ser a fuerzas con un For?
Son campos de una base de datos o de un formulario?

<center><img src="http://www.pcmasmas.com.ar/foro/images/avatars/043.gif"><br>
Urjose</center>
  #3 (permalink)  
Antiguo 29/05/2002, 10:07
 
Fecha de Ingreso: enero-2002
Mensajes: 27
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: Recorrer varios campos

-Comparlos respecto al valor de una variable.

- Me da igual que sea con un for mientras no tenga que hacerlo 35 veces

- Son campos de una Base de datos
  #4 (permalink)  
Antiguo 29/05/2002, 10:27
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: Recorrer varios campos

Variable=2

Do While not oRs.EOF
If oRs(&quot;Campo&quot;)&lt;Variable Then
Response.Write &quot;El Campo de la BD es menor a la variable &quot;
ElseIf oRs(&quot;Campo&quot;)=Variable Then
Response.Write &quot;El campo de la BD es igual a la variable&quot;
Else
Response.Write &quot;El campo de la BD es mayor a la variable&quot;
End If
Loop

Saludos

<center><img src="http://www.pcmasmas.com.ar/foro/images/avatars/043.gif"><br>
Urjose</center>
  #5 (permalink)  
Antiguo 29/05/2002, 10:34
 
Fecha de Ingreso: enero-2002
Mensajes: 27
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: Recorrer varios campos

Perdona, no me he explicado bien:

Tengo una tabla con una serie de campos denominados CAMPO1, CAMPO2 y así sucesivamente hasta CAMPO35.

Lo que quiero es comparar el valor de cada uno de estos campos con el valor de una variable y claro, no voy a hacerlo 35 veces.
  #6 (permalink)  
Antiguo 29/05/2002, 10:38
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: Recorrer varios campos

es decir tienes algo así?

campo1 | campo2 | campo3 | campo4 ...

creo que la única solución es hacerlo 35 veces, tal vez tu diseño de la tabla este mal hecho no?.

Saludos

<center><img src="http://www.pcmasmas.com.ar/foro/images/avatars/043.gif"><br>
Urjose</center>
  #7 (permalink)  
Antiguo 29/05/2002, 10:43
 
Fecha de Ingreso: enero-2002
Mensajes: 27
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: Recorrer varios campos

Efectivamente, así es la tabla y te aseguro que los campos se llaman así, por eso estoy desesperado, ya que no me funciona.
  #8 (permalink)  
Antiguo 29/05/2002, 10:57
 
Fecha de Ingreso: mayo-2002
Mensajes: 10
Antigüedad: 22 años
Puntos: 0
Re: Recorrer varios campos

según lo que entiendo tendrias.

strsql = &quot;select campo1, campo2,..., campo20
from tabla
where condicion&quot;

set rs = cn.execute(strsql)
if not(rs.eof and rs.bof) then
var_campos = rs.getrows(rs.recordcound)
'HE CREADO UNA MATRIZ QUE CONTENGA EL RESULTADO DEL SELECT
for i = 0 to ubound(var_campos)
if var_campos(i,FILA DESEADA) = TU_VARIABLE then
tus sentencias
end if
next
end if

Si hablamos de que el select te devuelve un solo registro FILA_DESEADA seria = 0 pero si tiene varias filas entonces tendrias que barrerte la matriz (var_campos) con un for anidado al primero.

Espero te sirva.
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 21:24.