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

¿como puedo reducir este if?

Estas en el tema de ¿como puedo reducir este if? en el foro de ASP Clásico en Foros del Web. Hay alguna manera de reducir este IF? if CInt(rsContactos("idProvincia"))<>4 and CInt(rsContactos("idProvincia"))<>11 and CInt(rsContactos("idProvincia"))<>14 and CInt(rsContactos("idProvincia"))<>18 and CInt(rsContactos("idProvincia"))<>21 and CInt(rsContactos("idProvincia"))<>23 and CInt(rsContactos("idProvincia"))<>29 and CInt(rsContactos("idProvincia"))<>41 and then ...
  #1 (permalink)  
Antiguo 31/01/2006, 02:39
 
Fecha de Ingreso: febrero-2004
Mensajes: 157
Antigüedad: 21 años, 3 meses
Puntos: 0
¿como puedo reducir este if?

Hay alguna manera de reducir este IF?

if CInt(rsContactos("idProvincia"))<>4 and CInt(rsContactos("idProvincia"))<>11 and CInt(rsContactos("idProvincia"))<>14 and CInt(rsContactos("idProvincia"))<>18 and CInt(rsContactos("idProvincia"))<>21 and CInt(rsContactos("idProvincia"))<>23 and CInt(rsContactos("idProvincia"))<>29 and CInt(rsContactos("idProvincia"))<>41 and then


Gracias!
  #2 (permalink)  
Antiguo 31/01/2006, 02:48
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 21 años, 5 meses
Puntos: 144
Pues creo que no vas a poder reducirlo. Lo que puedes hacer, si no te gusta ese condicional tan largo, es utilizar Select case:

Código:
idprovincia = CInt(rsContactos("idProvincia"))
Select Case idprovincia
Case 4, 11, 14, 18, 21, 23, 29, 41
    Response.write "Mec, meeeeeec!"
Case Else
    Response.write "Pi, piiiiiiii!"
End Select
  #3 (permalink)  
Antiguo 31/01/2006, 02:52
 
Fecha de Ingreso: febrero-2004
Mensajes: 157
Antigüedad: 21 años, 3 meses
Puntos: 0
Gracias

Gracias, pero creo que haré una funcioncilla... ¡utilizando tu código! jejeje
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 17:22.