Operation is not allowed when the object is closed

31/08/2004 - 05:34 por leon | Informe spam
saludos listeros.

Estoy obteniendo este error cuando trato de correr el siguiente codigo.
"Operation is not allowed when the object is closed"

Solo les voy a mostrar el pedazo donde me esta sacando el error, lo demas
lo omití porque no es necesario, como cerrar la conexion y los recordset.

las consultas corren y ejecutan bien.
El error ocurre en esta linea:
esta cinco lineas antes del final:

"if rst2.EOF = false then"



dim strMaxInmueble

'se crean dos rs, rst = select a tlbBienes
' strMax = para obtener el maximo Inmueble
set rst = Server.CreateObject("ADODB.Recordset")
set rst2 = Server.CreateObject("ADODB.Recordset")
set rstMax = Server.CreateObject("ADODB.Recordset")


'Se busca el consecutivo para el negocio
strSQL = "SELECT strNumeroInmueble AS Ninmueble" & _
" FROM tblBienes"

rst.Open strSQL, strRutaConexion
if rst.EOF = true then
strNumeroInmueble = mid(Trim(SessionIdRegional),1,2) & "0001"
else
'ahora obtenemos el máximo número del negocio
strSQL = "SELECT
Max(CLng(Mid(strNumeroInmueble,Len([strNumeroInmueble])-3,Len([strNumeroInmu
eble])))) AS Ninmueble" & _
" FROM tblBienes"

rstMax.Open strSQL, strRutaConexion
strMaxInmueble = rstMax.Fields("Ninmueble")
'aumentamos en 1 el negocio
strMaxInmueble = CLng(strMaxInmueble) + 1
'necesitamos concatenar los ceros a la izquierda
if len(strMaxInmueble) = 1 then
strMaxInmueble = "000" & strMaxInmueble
else
if len(strMaxInmueble) = 2 then
strMaxInmueble = "00" & strMaxInmueble
else
if len(strMaxInmueble) = 3 then
strMaxInmueble = "0" & strMaxInmueble
end if
end if
end if
'concatenamos todo para obtener el número negocio final
strNumeroInmueble = mid(Trim(SessionIdRegional),1,2) & strMaxInmueble
end if

strSQL = ""
strSQL = "INSERT INTO tblBienes ( strNumeroInmueble, " & _
" strIdRegional, strNumeroNegocio, strIdTipoInmueble," & _
" bytGrupoInmueble, strEstadoBien, strCuentaConavi," & _
" dblValorConavi, strIdPerito, dblValorAvaluo, dblValorGastos," & _
" strLocalizacion, strUrbanizacion, strMunicipio, strBarrio," & _
" strIdEstrato, lngArea, strMatriculaIn, strIdPiso, " & _
" strIdMuro, strIdTecho, strIdCocina, bytNumeroAlcobas, " & varCampos &
" )" & _
" VALUES (" & strNumeroInmueble & ", " & _
" " & strIdRegional & ", " & strNumeroNegocio & ", '" &
strIdTipoInmueble & "'," & _
" '" & bytGrupoInmueble & "', " & strEstadoBien & ", " &
strCuentaConavi & ", " & _
" " & dblValorConavi & ", '" & strIdPerito & "', " & dblValorAvaluo & ",
" & dblValorGastos & ", " & _
" '" & strLocalizacion & "', '" & strUrbanizacion & "', '" &
strMunicipio & "', '" & strBarrio & "', " & _
" '" & strIdEstrato & "', " & lngArea & ", '" & strMatriculaIn & "', '"
& strIdPiso & "', " & _
" '" & strIdMuro & "', '" & strIdTecho & "', '" & strIdCocina & "', " &
bytNumeroAlcobas & ", " & varValores & ")"

objConx.Execute(strSQL)

'Si el negocio tiene asociado un Bien y una Obligacion, entonces
' se coloca el campo strEstadoNeg de la tabla tblNegocios en 2 Contabilizado
strSQL = "SELECT tblNegocios.strNumeroNegocio, tblNegocios.strEstadoNeg" &
_
"FROM (tblNegocios INNER JOIN tblBienes ON
tblNegocios.strNumeroNegocio" & _
" = tblBienes.strNumeroNegocio) INNER JOIN tblObligaciones ON
tblNegocios.strNumeroNegocio" & _
" = tblObligaciones.strNumeroNegocio" & _
" WHERE tblNegocios.strEstadoNeg = '" & strNumeroNegocio & "'"


objConx.Open strRutaConexion
rst2.Open strSQL, strRutaConexion
if rst2.EOF = false then
strSQL = "UPDATE tblNegocios SET tblNegocios.strEstadoNeg = 2" & _
" WHERE strNumeroNegocio = '" & strNumeroNegocio & "'"
objConx.Execute(strSQL)
end if


De antemano os agradezco

leon
 

Leer las respuestas

#1 Franco Figún
31/08/2004 - 06:31 | Informe spam
Me suena a que alomejor estas tratando de hacer la consultar o insertar
datos, ya habiendo cerrado la conexion, o el recordset...

FF
www.francofigun.com.ar
www.microsofties.com.ar
Yahoo MSN:
ICQ: 314408886

"leon" escribió en el mensaje
news:
saludos listeros.

Estoy obteniendo este error cuando trato de correr el siguiente codigo.
"Operation is not allowed when the object is closed"

Solo les voy a mostrar el pedazo donde me esta sacando el error, lo demas
lo omití porque no es necesario, como cerrar la conexion y los recordset.

las consultas corren y ejecutan bien.
El error ocurre en esta linea:
esta cinco lineas antes del final:

"if rst2.EOF = false then"



dim strMaxInmueble

'se crean dos rs, rst = select a tlbBienes
' strMax = para obtener el maximo Inmueble
set rst = Server.CreateObject("ADODB.Recordset")
set rst2 = Server.CreateObject("ADODB.Recordset")
set rstMax = Server.CreateObject("ADODB.Recordset")


'Se busca el consecutivo para el negocio
strSQL = "SELECT strNumeroInmueble AS Ninmueble" & _
" FROM tblBienes"

rst.Open strSQL, strRutaConexion
if rst.EOF = true then
strNumeroInmueble = mid(Trim(SessionIdRegional),1,2) & "0001"
else
'ahora obtenemos el máximo número del negocio
strSQL = "SELECT



Max(CLng(Mid(strNumeroInmueble,Len([strNumeroInmueble])-3,Len([strNumeroInmu
eble])))) AS Ninmueble" & _
" FROM tblBienes"

rstMax.Open strSQL, strRutaConexion
strMaxInmueble = rstMax.Fields("Ninmueble")
'aumentamos en 1 el negocio
strMaxInmueble = CLng(strMaxInmueble) + 1
'necesitamos concatenar los ceros a la izquierda
if len(strMaxInmueble) = 1 then
strMaxInmueble = "000" & strMaxInmueble
else
if len(strMaxInmueble) = 2 then
strMaxInmueble = "00" & strMaxInmueble
else
if len(strMaxInmueble) = 3 then
strMaxInmueble = "0" & strMaxInmueble
end if
end if
end if
'concatenamos todo para obtener el número negocio final
strNumeroInmueble = mid(Trim(SessionIdRegional),1,2) & strMaxInmueble
end if

strSQL = ""
strSQL = "INSERT INTO tblBienes ( strNumeroInmueble, " & _
" strIdRegional, strNumeroNegocio, strIdTipoInmueble," & _
" bytGrupoInmueble, strEstadoBien, strCuentaConavi," & _
" dblValorConavi, strIdPerito, dblValorAvaluo, dblValorGastos," & _
" strLocalizacion, strUrbanizacion, strMunicipio, strBarrio," & _
" strIdEstrato, lngArea, strMatriculaIn, strIdPiso, " & _
" strIdMuro, strIdTecho, strIdCocina, bytNumeroAlcobas, " & varCampos


&
" )" & _
" VALUES (" & strNumeroInmueble & ", " & _
" " & strIdRegional & ", " & strNumeroNegocio & ", '" &
strIdTipoInmueble & "'," & _
" '" & bytGrupoInmueble & "', " & strEstadoBien & ", " &
strCuentaConavi & ", " & _
" " & dblValorConavi & ", '" & strIdPerito & "', " & dblValorAvaluo &


",
" & dblValorGastos & ", " & _
" '" & strLocalizacion & "', '" & strUrbanizacion & "', '" &
strMunicipio & "', '" & strBarrio & "', " & _
" '" & strIdEstrato & "', " & lngArea & ", '" & strMatriculaIn & "',


'"
& strIdPiso & "', " & _
" '" & strIdMuro & "', '" & strIdTecho & "', '" & strIdCocina & "', "


&
bytNumeroAlcobas & ", " & varValores & ")"

objConx.Execute(strSQL)

'Si el negocio tiene asociado un Bien y una Obligacion, entonces
' se coloca el campo strEstadoNeg de la tabla tblNegocios en 2 > Contabilizado
strSQL = "SELECT tblNegocios.strNumeroNegocio, tblNegocios.strEstadoNeg"


&
_
"FROM (tblNegocios INNER JOIN tblBienes ON
tblNegocios.strNumeroNegocio" & _
" = tblBienes.strNumeroNegocio) INNER JOIN tblObligaciones ON
tblNegocios.strNumeroNegocio" & _
" = tblObligaciones.strNumeroNegocio" & _
" WHERE tblNegocios.strEstadoNeg = '" & strNumeroNegocio & "'"


objConx.Open strRutaConexion
rst2.Open strSQL, strRutaConexion
if rst2.EOF = false then
strSQL = "UPDATE tblNegocios SET tblNegocios.strEstadoNeg = 2" &


_
" WHERE strNumeroNegocio = '" & strNumeroNegocio & "'"
objConx.Execute(strSQL)
end if


De antemano os agradezco

leon


Preguntas similares