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

Type mismatch INSOLITO!!

Estas en el tema de Type mismatch INSOLITO!! en el foro de ASP Clásico en Foros del Web. Tengo este "clásico error" pero solo si el string de conexión sql proviene de una función. Si en cambio lo escribo como texto, me muestra ...
  #1 (permalink)  
Antiguo 14/02/2010, 11:36
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
Type mismatch INSOLITO!!


Tengo este "clásico error" pero solo si el string de conexión sql proviene de una función. Si en cambio lo escribo como texto, me muestra el resultado perfecto.


Alguien podría ayudarme?

Este es el string de conexión con la función grupo.

sql="select top 10 * from notas where ( coduser = " & desencrip(magic(request.querystring("u"))) & grupo(request.querystring("u")) & ") and ( mostrar = true and fechabaja is null ) order by codnota desc;"

call getrs(sql, encrip(rs5("codgrupo")))


Y este es el string que funciona bien

sql="select top 10 * from notas where ( coduser = 1 or coduser = 46 or coduser = 45) and ( mostrar = true and fechabaja is null ) order by codnota desc;"



Esta es la función grupo() en la cual paso el usuario. Por la función getrs5 no se preocupen que funciona correctamente en otras partes del sistema.

Function grupo(u)

validar5 = "0"

'Busco contactos que mi grupo comparta conmigo.
'Se busca ahora los codigos de codgrupo.
call getrs5("Select * from grupos where codgrupo = " & desencrip(magic(request.querystring("u"))) & " and activado = on and fechabaja is null order by coduser desc;")
if rs5.recordcount > 0 then
rs5.movefirst
do while not rs5.eof

grupo = grupo + " or coduser = " & int(rs5("coduser"))
validar5 = "1"

rs5.movenext
loop

end if
rs5.close
con5.close
set rs5 = nothing
set con5 = nothing




'Se busca ahora los codigos que quedaron como coduser. Antes era como codgrupo. Todo depende de quien invite a quien.
call getrs5("Select * from grupos where coduser = " & desencrip(magic(request.querystring("u"))) & " and activado = on and fechabaja is null order by coduser desc;")
if rs5.recordcount > 0 then
rs5.movefirst
do while not rs5.eof

grupo = grupo + " or coduser = " & int(rs5("codgrupo"))
validar5 = "1"

rs5.movenext
loop

end if
rs5.close
con5.close
set rs5 = nothing
set con5 = nothing


if validar5 = "0" then
grupo = ""
end if

end function




Por último, el maldito error:

Microsoft VBScript runtime (0x800A000D)
Type mismatch


Espero puedan ayudarme. Mil gracias desde ya!
  #2 (permalink)  
Antiguo 14/02/2010, 11:39
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Type mismatch INSOLITO!!

Observación que no puse:

hago un response.write de ("select top 10 * from notas where ( coduser = " & desencrip(magic(request.querystring("u"))) & grupo(request.querystring("u")) & ") and ( mostrar = true and fechabaja is null ) order by codnota desc;")

Y me muestra exactamente el texto que funciona bien.

"select top 10 * from notas where ( coduser = 1 or coduser = 46 or coduser = 45) and ( mostrar = true and fechabaja is null ) order by codnota desc;"
  #3 (permalink)  
Antiguo 15/02/2010, 10:08
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Respuesta: Type mismatch INSOLITO!!

Y en cuál linea marca el error?

Etiquetas: type
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 00:40.