PROBLEMA EOF

06/04/2005 - 07:57 por theco | Informe spam
Saludo alguien que me pueda ayudar tengo una aplicacion echa en asp
funcionando actualmente con una base de datos acces y la cual funciona
perfectamente, pero ahora luego de migrar a sql server 2000 pero en esta
rutinita

IF oRS3.EOF THEN
oRS3.AddNew()
anadido = True
END IF

oRS3("ClienteID") = cliente_id
oRS3("PRTC") = prtc
oRS3("NumTel") = telefono
oRS3("Fecha") = fecha
oRS3("Dir1") = dir1
oRS3("Dir2") = dir2
'oRS3("RequeridoPor") = requerido_por
oRS3("Hora") = hora
oRS3("Contacto") = contacto
oRS3("NumReferencia") = num_ref
oRS3("Clasificacion") = clasificacion
oRS3("NumContrato") = num_contrato
oRs3("DescTarea") = Descripcion
oRS3("TipoInst") = tipo_inst
oRS3("TipoMant") = tipo_mant
'oRs3("Descripcion") = Descripcion
oRS3("FechaOrden") = now()
oRS3("StatusO") = "pendiente"
oRS3("CUenta") = cuenta
oRS3("Updated") = 1
oRS3.Update

IF NOT oRS3.EOF THEN oRS3.MoveFirst

IF anadido = True THEN
oRS3.MoveLast <++++++++++++++++++++++++++++++++++++++ aca es error
IF NOT oRS3.EOF THEN
tt_id = oRS3("TTID")
END IF
END IF

me da el siguiente error
Either BOF or EOF is True, or the current record has been deleted. Requested
operation requires a current record.
orden.asp, line 235

si estoy conciente de que este error me lo da cuando el recordset esta vacio
pero despues de mi rutina de update ella esta entrando los datos a la base
de datos lo cual quiere decir que si hay un record en la base de datos luego
verifico si el rs.eof que se mueva al primero ver codigo por favor alguien
me pueda dar la solucion e indicarme que estoy haciendo mal
 

Leer las respuestas

#1 Matias Iacono
06/04/2005 - 23:47 | Informe spam
Prueba de hacer primero un movefirst y luego el last

A veces pasa que el registro esta si o si al ultimo, y no puedes ir mas
alla.

Por otro lado, si no tienes datos tambien te arrojara error. En ese caso
seria bueno que uses un control de errores y manejarlo desde ahi.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE2


Profile: http://aspnet2.com/mvp.ashx?MatiasIacono



"theco" escribió en el mensaje
news:175a6$4252d8ea$4117d1d0$
Saludo alguien que me pueda ayudar tengo una aplicacion echa en asp
funcionando actualmente con una base de datos acces y la cual funciona
perfectamente, pero ahora luego de migrar a sql server 2000 pero en esta
rutinita

IF oRS3.EOF THEN
oRS3.AddNew()
anadido = True
END IF

oRS3("ClienteID") = cliente_id
oRS3("PRTC") = prtc
oRS3("NumTel") = telefono
oRS3("Fecha") = fecha
oRS3("Dir1") = dir1
oRS3("Dir2") = dir2
'oRS3("RequeridoPor") = requerido_por
oRS3("Hora") = hora
oRS3("Contacto") = contacto
oRS3("NumReferencia") = num_ref
oRS3("Clasificacion") = clasificacion
oRS3("NumContrato") = num_contrato
oRs3("DescTarea") = Descripcion
oRS3("TipoInst") = tipo_inst
oRS3("TipoMant") = tipo_mant
'oRs3("Descripcion") = Descripcion
oRS3("FechaOrden") = now()
oRS3("StatusO") = "pendiente"
oRS3("CUenta") = cuenta
oRS3("Updated") = 1
oRS3.Update

IF NOT oRS3.EOF THEN oRS3.MoveFirst

IF anadido = True THEN
oRS3.MoveLast <++++++++++++++++++++++++++++++++++++++ aca es error
IF NOT oRS3.EOF THEN
tt_id = oRS3("TTID")
END IF
END IF

me da el siguiente error
Either BOF or EOF is True, or the current record has been deleted.


Requested
operation requires a current record.
orden.asp, line 235

si estoy conciente de que este error me lo da cuando el recordset esta


vacio
pero despues de mi rutina de update ella esta entrando los datos a la base

de datos lo cual quiere decir que si hay un record en la base de datos


luego
verifico si el rs.eof que se mueva al primero ver codigo por favor


alguien
me pueda dar la solucion e indicarme que estoy haciendo mal


Preguntas similares