Foros del Web » Programando para Internet » ASP Clásico »

Cómo cambiar el número de registros que aparezcan al paginar?

Estas en el tema de Cómo cambiar el número de registros que aparezcan al paginar? en el foro de ASP Clásico en Foros del Web. Hola a todos, tengo el siguiente código para paginar. Me lo bajé de internet e hice unas modificaciones y ahora me funciona. La cuestión es ...
  #1 (permalink)  
Antiguo 20/05/2004, 06:30
 
Fecha de Ingreso: abril-2004
Mensajes: 21
Antigüedad: 21 años
Puntos: 0
Cómo cambiar el número de registros que aparezcan al paginar?

Hola a todos, tengo el siguiente código para paginar. Me lo bajé de internet e hice unas modificaciones y ahora me funciona. La cuestión es que ahora quiero que en vez de 10 registros, me salga uno por página y lo he intentado y me sale bien hasta que le doy al botón para ver los registros restantes y me da que no encuentra ningún valor.

¿Hay alguien por ahí que domine esto y me eche una manita? Se lo agradecería de veras.

<%sql="select......"

xx=request.form("direccion")
if xx = "Atras" then
session("pagina")=session("pagina")-1

if session("pagina")< 1 then
session("pagina")=1
end if

else
if xx="Adelante" then
session("pagina")=session("pagina")+1
else
session("pagina")=1
end if
end if


Set Ob_Conn=Server.CreateObject("ADODB.Connection")
ob_conn.Open "Provider=sqloledb;" & _
"Data Source=sena;" & _
"Initial Catalog=datos_Producto;" & _
"User Id=datos;" & _
"Password=datos"

Set Ob_RS=Server.CreateObject("ADODB.Recordset")
ob_RS.CursorLocation =adUseClient

Ob_RS.Open sql,ob_conn,3,1

Ob_RS.PageSize=10

if ob_rs.pagecount=0 then
Response.Redirect "novalores.asp"
end if

if session("pagina")>ob_rs.pagecount then
session("pagina")=ob_rs.pagecount
end if

ob_rs.absolutepage=session("pagina")
inicio=1+(session("pagina")-1)*ob_rs.pagesize
fin=inicio+9
if fin > ob_rs.recordcount then
fin =ob_rs.recordcount
end if
%>

<center><h3>LISTA SOLICITADA</h3></center>
<table border="0" width="100%" bgcolor="khaki">
<tr>
<td width="50%" align="center">Registros <font color="#FF0000"><%=inicio%> </font>
al <font color="#FF0000"><%=fin%></font> de un total de
<font color="#FF0000"><%=ob_rs.recordcount%></font></td>
<td width="50%" align="center">Página <font color="#FF0000"><%=session("pagina")%>
</font> de <font color="#FF0000"><%=ob_rs.pagecount%></font></td>
</tr>
</table>
<br>

<%IF NOT Ob_RS.Eof THEN%>
<TABLE BORDER=1>
<center>
<table border="2" bgcolor="white">
<TR>
<TH>Autor</TH>
<TH>Numero P</TH>
<TH>Resumen</TH>

<%Registro=0
DO WHILE Registro<10 AND NOT Ob_RS.Eof%>
<TR>
<TD><%=Ob_RS("idAutorFK")%></TD>
<TD><%=Ob_RS("numeroP")%></TD>
<TD><%=Ob_RS("resumen")%></TD>
<%Registro=Registro+1
Ob_RS.MoveNext
LOOP
Response.Write "</TABLE>" %>


<table border="0" width="38%" height="5">
<tr><%if session("pagina")<> 1 then %>
<td width="50%" height="1" align="center">
<form method="POST" action="Buscar3.asp">
<p><input type="submit" value="Atras" name="direccion"></p>
</form>
</td><%end if%>
<%if session("pagina")< ob_rs.pagecount then%>
<td width="50%" height="1" align="center">
<form method="POST" name="Buscar3.asp">
<p><input type="submit" value="Adelante" name="direccion"></p>
</form>
</td><%end if%>
</tr>
</table>
</center>
</div>

<%END IF%>

<% Ob_RS.Close
Ob_Conn.Close%>
  #2 (permalink)  
Antiguo 20/05/2004, 07:52
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
1) Ob_RS.PageSize=10 -> Ob_RS.PageSize=1
2) DO WHILE Registro<10 AND NOT Ob_RS.Eof%>
DO WHILE Registro<1 AND NOT Ob_RS.Eof%>

No he probado tu código, pero a golpe de vista eso parece cambiar de 10 a 1 el número de reg. mostrados.

Saludos
  #3 (permalink)  
Antiguo 20/05/2004, 07:57
 
Fecha de Ingreso: abril-2004
Mensajes: 21
Antigüedad: 21 años
Puntos: 0
Gracias ya lo he intentado pero algo falla y no sé que es. Pero con diez registros funciona perfectamente, no sé pq será.

Si se te ocurre algo más....
  #4 (permalink)  
Antiguo 20/05/2004, 11:30
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Revisando otra vez tu código

inicio=1+(session("pagina")-1)*ob_rs.pagesize
fin=inicio+9

Ahí parece estar el detalle.

saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:18.