
06/02/2006, 07:41
|
| | Fecha de Ingreso: junio-2003 Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años, 11 meses Puntos: 0 | |
Error: La consulta es demasiado compleja Un saludo:
Alguien sabria decirme por qué me da el error mencionado en el titulo del hilo.
Los datos a borrar provienen de un listado mediante formulario. La cosa es que tiene que borrar dos registros en dos tablas diferentes y las imagenes que lleva asociadas de su carpeta de usuario.
Todo funciona bien borra las imagenes, borra el segundo registro y luego me devuelve ese error al intentar borrar el primer registro.
Les paso el código y les indico la linea del error en rojo para ver si pueden echarme una mano.
Código:
<<A href="mailto:%@LANGUAGE="VBSCRIPT">%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%response.Expires=0
Response.AddHeader "PRAGMA", "NO-CACHE"
if session("autorizacion")=-1 then
response.redirect "../../login.asp"
end if
nombreusuario=request.QueryString("nombreusuario")
autonomia=request.QueryString("autonomia")
%>
<html>
<head>
<title>Desde aquí puede borrar las tallas</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
<link href="../../../hojaestilo.css" rel="stylesheet" type="text/css">
</head>
<body leftmargin="5" topmargin="5" marginwidth="5" marginheight="5">
<!--Incluimos el fichero de constantes-->
<!--#INCLUDE file="../../../adovbs.asp"-->
<%IF (request.form <> "") then
'Abrimos la conexion a la tabla hotelesturismo
set Conn= Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "DSN=turofertas.com"
Conn.open
Set RS=Server.CreateObject("ADODB.Recordset")
rs.activeconnection=Conn
rs.source="hotelesturismo"
rs.Locktype = adLockOptimistic
rs.CursorType = adOpenDinamic
rs.open
'Fin codigo conexion a la tabla hotelesturismo
'Abrimos la conexion a la tabla tarifasturismo
Set RS2=Server.CreateObject("ADODB.Recordset")
rs2.activeconnection=Conn
rs2.source="tarifasturismo"
rs2.Locktype = adLockOptimistic
rs2.CursorType = adOpenDinamic
rs2.open
'Fin codigo conexión a la tabla tarifasturismo
Poner_AND= False
'El Codigo siguiente hace que si el formulario se envia vacio no se borre toda la tabla
Vacio=true
For each parametro in request.form
parametro = Lcase(parametro)
if request.form(parametro) <> "" then
vacio = false
exit for
end if
next
IF vacio=true THEN
response.write("<br><br><div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""3"" color=""#FB4C50""><strong>Operación no permitida.<br> Al dejar todos los campos vacios, ha intentado borrar la tabla completa</strong></font></div>")
END IF
'Termina el codigo de comprobacion del formulario vacio para no borrar toda la tabla
if not vacio then
Filtro= ""
FOR EACH Parametro IN Request.Form
IF Request.Form (Parametro) <> "" THEN
IF Poner_AND THEN
Filtro= Filtro & " AND " & Parametro & "='"
Filtro= Filtro & Request.Form(Parametro) & "'"
ELSE
Filtro= Filtro & Parametro & "='"
Filtro= Filtro & Request.Form(Parametro) & "'"
Poner_AND = True
END IF
END IF
NEXT
Filtro=Lcase(filtro)
response.write "Filtro rs: " & filtro & "<br>"
rs.filter= Filtro
if rs.bof and rs.eof then
response.write("<br><br><div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""3"" color=""#FB4C50""><strong>No se encontraron coincidencias con la búsqueda solicitada </strong></font></div>")
else%>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr bgcolor="#e0e0e0">
<td width="17%"> <div align="left"><font color="#003399" size="2" face="Arial, Helvetica, sans-serif">Referencia</font></div></td>
<td width="33%"><font color="#003399" size="2" face="Arial, Helvetica, sans-serif">Nombre</font></td>
<td width="8%"><font color="#003399" size="2" face="Arial, Helvetica, sans-serif">Localidad</font></td>
</tr>
<%response.write ("Se han borrados los siguientes registros <p>")
rs.movefirst
do while not rs.eof
if colorfila=0 then
color="#EEF0F7"
colorfila=1
else
color="FFFFFF"
colorfila=0
end if %>
<tr valign="top" bgcolor="<%=color%>">
<td><font size="2" face="Arial, Helvetica, sans-serif"><%=RS("referenciahotelcasa")%></font></td>
<td><div align="justify"><font size="2" face="Arial, Helvetica, sans-serif"><%=RS("empresanombrecomercial")%></font></div></td>
<td><font size="2" face="Arial, Helvetica, sans-serif"><%=RS("localidad")%></font></td>
</tr>
<%rs.movenext
loop%>
</table>
<%rs.movefirst
do while not rs.eof
'Construimos la ruta y el nombre del fichero que se va a borrar del servidor y
'que previamente escogimos mediante el formulario de borrar registros
cadenaorigen=rs("imagen")
if cadenaorigen <> "" then
cadenabuscar="../../"
'cadenacambiar="C:\Inetpub\vhosts\turofertas.com\httpdocs\"
cadenacambiar="E:/obradoiroweb/obradoiroweb/Turofertas/"
rutaimagenaborrar=replace(cadenaorigen,cadenabuscar,cadenacambiar,1,1,1)
set FSO=CreateObject("Scripting.FileSystemObject")
set file=fso.GetFile(rutaimagenaborrar)
file.delete
end if
cadenaorigen1=rs("imagen1")
if cadenaorigen1 <> "" then
cadenabuscar1="../../"
'cadenacambiar1="C:\Inetpub\vhosts\turofertas.com\httpdocs\"
cadenacambiar1="E:/obradoiroweb/obradoiroweb/Turofertas/"
rutaimagenaborrar1=replace(cadenaorigen1,cadenabuscar1,cadenacambiar1,1,1,1)
set file=fso.GetFile(rutaimagenaborrar1)
'response.write file.delete
file.delete
end if
cadenaorigen2=rs("imagencomollegar")
if cadenaorigen2 <> "" then
cadenabuscar2="../../"
'cadenacambiar2="C:\Inetpub\vhosts\turofertas.com\httpdocs\"
cadenacambiar2="E:/obradoiroweb/obradoiroweb/Turofertas/"
rutaimagenaborrar2=replace(cadenaorigen2,cadenabuscar2,cadenacambiar2,1,1,1)
set file=fso.GetFile(rutaimagenaborrar2)
file.delete
end if
cadenaorigen3=rs("descargafolletos")
if cadenaorigen3 <> "" then
cadenabuscar3="../../"
'cadenacambiar3="C:\Inetpub\vhosts\turofertas.com\httpdocs\"
cadenacambiar3="E:/obradoiroweb/obradoiroweb/Turofertas/"
rutaimagenaborrar3=replace(cadenaorigen3,cadenabuscar3,cadenacambiar3,1,1,1)
set file=fso.GetFile(rutaimagenaborrar3)
file.delete
end if
'Este código busca el registro a borrar en la tabla tarifasturismo basandose en el campo referenciahotelcasa
Sqlstring="referenciahotelcasa=" & "'" &rs("referenciahotelcasa")& "'"
rs2.filter=Sqlstring
'rs2.movefirst
'do while not rs2.eof
rs2.delete
'rs2.movefirst
'loop
'Acaba aquí el codigo de borrado del registro en la tabla tarifasturismo
'Borramos el registro seleccionado en el formulario de borrar registros
rs.delete
'Borra siempre el primer registro del filtro
'rs.movefirst
rs.movenext
loop
end if
end if%>
<br>
<br>
<A HREF="../../../modulo_gestion.asp?nombreusuario=<%=nombreusuario%>" target="_parent">Menu principal </A> ** <A HREF="borrar_turismo.asp?nombreusuario=<%=nombreusuario%>" target="_parent">Borrar Oferta</A>
<%
rs.close
rs2.close
Conn.close
%>
<%ELSE
set Conn1= Server.CreateObject("ADODB.Connection")
Set rs1=Server.CreateObject("ADODB.Recordset")
Conn1.ConnectionString = "DSN=turofertas.com"
Sqlstring="select empresanombrefiscal from clientes where nombreusuario=" & "'" &nombreusuario& "'"
Conn1.open
Set rs1 = Conn1.execute (sqlstring)
%>
Rellene el campo por el cual desea realizar la búsqueda </p>
<form name="form1" method="post" action="borrar_turismo.asp?nombreusuario=<%=nombreusuario%>">
<table width="100%">
<tr>
<td width="13%" class="CELDA">Referencia</td>
<td width="87%"><input name="referenciahotelcasa" type="text" class="CAJASDETEXTO" id="referenciahotelcasa" tabindex="1" size="10" maxlength="10"></td>
</tr>
<tr>
<td class="CELDA">Nombre Fiscal</td>
<td><input name="empresanombrefiscal" type="text" class="CAJASDETEXTO" id="empresanombrefiscal" onFocus="blur()" value="<%=rs1("empresanombrefiscal")%>" size="35" maxlength="35"></td>
</tr>
<tr>
<td class="CELDA">Nombre Comercial</td>
<td><input name="empresanombrecomercial" type="text" class="CAJASDETEXTO" id="empresanombrecomercial" tabindex="2" size="35" maxlength="35"></td>
</tr>
<tr>
<td class="CELDA">Localidad</td>
<td><input name="localidad" type="text" class="CAJASDETEXTO" id="localidad" size="35" maxlength="35"></td>
</tr>
<tr>
<td class="CELDA">Provincia</td>
<td>
<input name="provincia" type="text" class="CAJASDETEXTO" id="provincia" size="22" maxlength="22"> </td>
</tr>
<tr>
<td><font face="Arial, Helvetica, sans-serif"><a href="../../../modulo_gestion.asp?nombreusuario=<%=nombreusuario%>"><font size="2">Menú Principal</font></a></font> </td>
<td><input type="submit" class="BOTONES_FORMULARIO" value="Borrar Casa Turismo Rural">
<input name="reset" type="reset" class="BOTONES_FORMULARIO" value="Limpiar Formulario"></td>
</tr>
</table>
</form>
<p>
<%rs1.close
Conn1.close
END IF%>
</p>
</body>
</html>
__________________ Espero haber aprendido algo de tí.
A mi padre. |