Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/08/2010, 09:49
Adriangd7
 
Fecha de Ingreso: agosto-2010
Mensajes: 25
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Ayuda, problema con Access y ASP

Os lo pongo mas detalladamente.

Vamos por partes tengo una función donde creó la conexión a la base de datos, es la siguiente:
Código ASP:
Ver original
  1. function abrirConexionAccess(byref objConexionAccess)          
  2.         Set objConexionAccess = Server.CreateObject ("ADODB.Connection")
  3.         objConexionAccess.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("baseDatos/datosrem.mdb")
  4.     end function

Tengo otra función que es para cerrar la conexión, que es la siguiente:

Código ASP:
Ver original
  1. function cerrarConexionAccess(byref objConexionAccess)
  2.         objConexionAccess.Close
  3.         Set objConexionAccess = Nothing
  4.     end function


Llamo a la función parar crear la conexión:

Código ASP:
Ver original
  1. dim objConexionAccess  
  2. call abrirConexionAccess(objConexionAccess)

Y luego ya está la función donde cojo los datos de la base de datos:

Código ASP:
Ver original
  1. function buscarPorInstalacion()    
  2.         dim queryAccess, query, queryAux, rsconsulta, rsconsultaAux ,rsconsultaAccess, registros, horaPrin, horaFin
  3.         horaPrin=Request.Form("horaPrinc")
  4.         horaFin=Request.Form("horaFiin")
  5.         if (horaPrin = "") then
  6.             horaPrin = "00:00"
  7.         end if
  8.         if (horaFin = "") then
  9.             horaFin = "23:59"
  10.         end if     
  11.         %>
  12.         <table border="1" bordercolor="#000000" style="font-family:Verdana, Arial, Helvetica, sans-serif; color:#000000; font-size:8pt; border-style:ridge; border-width:1px;" cellspacing="0" cellpadding="0" align="center">     
  13.        
  14.         <tr>
  15.             <td style="font-weight:bold; background-color:#7CC2FC; padding:3px; " align="center">
  16.                 Instalación
  17.             </td>
  18.             <td style="font-weight:bold; background-color:#7CC2FC; padding:3px; " align="center">
  19.                 Huerta
  20.             </td>
  21.             <td style="font-weight:bold; background-color:#7CC2FC; padding:3px; " align="center">
  22.                 Fecha
  23.             </td>
  24.         </tr>          
  25.         <%
  26.         if Request.Form("Instalacion") = 0 then
  27.             queryAux="select * from correspondencia"   
  28.         else       
  29.             queryAux="select * from correspondencia where id_instalacion='" & trim(Request.Form("Instalacion")) & "'"          
  30.         end if
  31.         set rsconsultaAux=server.CreateObject("ADODB.Recordset")       
  32.         rsconsultaAux.open queryAux, objconexionAux
  33.         while not rsconsultaAux.eof
  34.             if Request.Form("Medida") = 1 then
  35.                 queryAccess="select TOP 10 * from " & trim(rsconsultaAux.fields(1)) & "PM1Tm2"                 
  36.             else
  37.                 if Request.Form("Medida") = 2 then
  38.                     queryAccess="select TOP 10 * from " & trim(rsconsultaAux.fields(1)) & "PM1Tm1"                     
  39.                 else
  40.                     if Request.Form("Medida") = 3 then
  41.                         queryAccess="select TOP 10 * from " & trim(rsconsultaAux.fields(1)) & "PM1Tm1"                         
  42.                     end if
  43.                 end if
  44.             end if
  45.             if Request.Form("fechaPrinc") <> "" then
  46.                 queryAccess=queryAccess & " where FECHA>=#" & fechaBD(Request.Form("ocufechaPrin")) & " " & horaPrin & "#"
  47.             end if 
  48.             if Request.Form("fechaFiin") <> "" then
  49.                 queryAccess=queryAccess & " and FECHA<=#" & fechaBD(Request.Form("fechaFiin")) & " " & horaFin & "#"
  50.             end if     
  51.                         Set rsconsultaAccess = objConexionAccess.Execute(queryAccess)              
  52.                         while not rsconsultaAccess.eof
  53.                 query="select * from INSTALACIONES where ID_INSTALACION=" & rsconsultaAux.Fields(4)
  54.                 set rsconsulta=server.CreateObject("ADODB.Recordset")
  55.                 rsconsulta.open query, objconexion
  56.         %>
  57.                 <TR>   
  58.                     <td style="padding:3px; background-color:#7CC2FC; border-right:none;" align="center"><%=rsconsulta.Fields(2).Value %></TD>
  59.                     <td style="padding:3px; background-color:#7CC2FC; border-right:none;" align="center"><%=rsconsultaAux.Fields(2).Value %></TD>
  60.                     <td style="padding:3px; background-color:#7CC2FC; border-right:none;" align="center"><%=rsconsultaAccess.Fields(0).Value %></TD>
  61.                     <td style="padding:3px; background-color:#7CC2FC; border-right:none;" align="center"><%= rsconsultaAccess.Fields(1).Value %></TD>
  62.                     <td style="padding:3px; background-color:#7CC2FC; border-right:none;" align="center"><%= rsconsultaAccess.Fields(2).Value %></TD>
  63.                     <td style="padding:3px; background-color:#7CC2FC; border-right:none;" align="center"><%= rsconsultaAccess.Fields(3).Value %></TD>
  64.                     <td style="padding:3px; background-color:#7CC2FC;
  65.                 </TR>  
  66.         <% 
  67.                 rsconsultaAccess.MoveNext              
  68.                 rsconsulta.Close
  69.         wend
  70.         rsconsultaAccess.Close     
  71.         rsconsultaAux.MoveNext
  72.     wend
  73.     Response.Write("</table>") 
  74.    
  75.     end function

El problema es que la primera consulta la hace perfectamente, pero a partir de la siguiente me da el error, pero si esperas unos minutos y actualizas la página te muestra el resultado correctamente.
Un saludo

Última edición por Adriangd7; 24/08/2010 a las 10:03