Método find de un recordset

Ya no se donde buscar, espero que tu me puedas ayudar. No me funciona el método find de un objeto recordset. ¿Cuál son los rangos del los parámetros? Estoy intentado buscar un record dentro de un recordset con el método find. La sintaxis es:
Recordsetobj. Find(criteria, skiprows, direction, start)
Lo que yo pongo es:
rs.Find "id_respuesta='idrta'",1,1,1
Donde id_respuesta es el nombre del campo,
idrta es la variable donde almaceno el valor que quiero buscar
El resto de parámetros no se que rango tienen, pero la direction, es el parámetro que me indica si empiezo a buscar en el registro que le indico o en el siguiente, (me gustaría indicarle que en el que yo le indico para que empiece a buscar pero no se cual es el valor que tengo que poner)
Otro problema es que no me reconoce la variable que yo le pongo, si pongo un valor numérico a mano, algo busca pero quiero que me lo coja de la variable.
Bueno no se si me he explicado muy bien, espero que me puedas ayudar porque llevo 2 días intentando solucionarlo y no encuentro la forma.
Muchas gracias,
un saludo

2 respuestas

Respuesta
1
Lo que le estas diciendo al find es que busque en el campo id_respuesta el texto idrta no el contenido de la variable
Prueba esto:
rs.Find "id_respuesta='" & idrta & "'"
Lo primero muchas gracias por contestarme. Tienes razón, te lo escribí mal aunque yo en el programa lo pongo bien. Estoy simulando el programa con el emulador WinWap 3.0 Pro y lo que me pasa es que:
Si pongo:
rs.MoveFirst
j="2"
rs.Find "id_respuesta='" & j & "'",1,1,1
Funciona bien.
Si quito los 3 últimos parámetros (que los he puesto al tuntun) supuestamente opcionales, me sale el error: Rowset does not support scrolling backward.
Por otra parte, si inicializo la variable j con el valor de una variable wml, de la siguiente forma:
rs.MoveFirst
j="$(rta)"
rs.Find "id_respuesta='" & j & "'",1,1,1
Pues ya no me funciona y el error que me sale es: Type mismatch.
¿Hay alguna forma de pasar el valor de una variable wml a una variable asp?
Bueno espero que esta vez me haya explicado mucho mejor y me puedas responder otra vez.
Muchas gracias otra vez,
un saludo
En cuanto a los parámetros opcionales del find te diré el direction solo se puede usar cuando el recordset no tiene limitación de dirección de búsqueda. Si abres un recordset con forwardonly y pones una dirección de búsqueda que no sea adelante te dará un error.
En cuanto al paso de variables wml a asp no puede ayudarte mucho porque no estoy muy puesto en wml pero en asp puedes concatenar lo que quieras aunque necesites hacer un poco de casting
Una ultima cosa, que funciones hay en asp para realizar castings. No creo que sea ese el problema porque imprimir lo imprime bien, pero es que no se como se le asigna un tipo a una variable, ¿así qué si me puedes decir como se hace o darme la dirección de algún manual bueno de asp dode lo pueda buscar?
Gracias por todo, y la siguiente vez te prometo cerrar la pregunta :-)
Saludos
Si utilizas el visual studio de microsoft o solo interdev (el editor de páginas de vs) tienes una ayuda muy buena para todo lo referente a este campo.
En msdn. Microsoft.com tienes esta misma ayuda y muchísima más en linea
Las funciones de casting son varias como CInt, CLng, CStr, etc busca por aquí
Respuesta
1
¿Qué método de movimiento del recorddset usas en la apertura del mismo? Puede ser que direction sea la clave.
Siempre convierte tus variables a los tipos de datos que sean Cstr, Cint...
No es mucho, pero ... nunca use rs.find ;)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas