eGrupos Logo
Inicio > Mi Página > Mis Grupos > cooperatorframework > Mensajes

 Índice de Mensajes 
 Mensajes 3419 al 3438 
AsuntoAutor
ejemplo winforms Leandro
RE: ejemplo winfor Carlos M
Re: ejemplo winfor Leandro
Bug: GenerateAsRea Vyachesl
Bugs corregidos so Eugenio
Clonar una entidad Miquel B
RE: Clonar una ent Miquel B
Clonar entidad Miquel B
fusion de proyecto Leandro
RE: fusion de proy Eugenio
Duda sobre paramet Bernar
Re: Duda sobre par Anonimo
Re: Duda sobre par Bernar
mas de una DB Jonathan
RE: mas de una DB Eugenio
Paginacion y Orden Bernar
Re: Paginacion y O Anonimo
RE: Paginacion y O Jorge Ad
Re: Paginacion y O Anonimo
Re: Paginacion y O Daniel C
 << 20 ant. | 20 sig. >>
 
CooperatorFramework

Mostrando mensaje 3438     < Anterior | Siguiente >
Responder a este mensaje
Asunto:Re: [cooperatorframework] Paginacion y Ordenacion con Cooperator
Fecha:Miercoles, 29 de Abril, 2009  09:39:29 (-0300)
Autor:Daniel Calvin <daniel.calvin @.....com>
En respuesta a:Mensaje 3436 (escrito por Jorge Adrian Croce)

Buenas gente

Vengo leyendo, con poco tiempo de participar, creo que se podría integrar en coop esta funcionalidad, no me parece mal.

Tal evz me gustaria pegarle un golpecito de tuerca..., solo eso...

Daniel Calvin

El 29 de abril de 2009 8:13, Jorge Adrian Croce <jorgecroce@hotmail.com> escribió:
Exacto, yo tambien estuve haciendo pruebas de paginacion con cooperator y llegué a la misma solucion, salvo que en vez de sobreescribir metodos lo hago en QUERYS agregando los parametros Pagina e TamañoPagina.
 
Ademas, como dice "Anonimo", en el ASP agrego un objeto ObjectDataSource y le configuro los metodos SelectMethod y SelectCountMethod.
 
Lo probè haciendo busquedas paginadas en 250.000 registros y la verdad que vuela, funciona muy rapido.
 
Se podrá hacer que en las proximas versiones del COOP, los métodos GetAll, GetByxxx tengan en su firma los parámetros Pagina y TamañoPagina opcionales para los que utilizan SQL 2005 y quieren sacar provecho de esta nueva funcionalidad???
 
A mi me vendria genial!!
 
No se si les pasa al resto, pero yo utilizo SQL 2005, solo por la funcionalidad del paginado ya que con el 2000 era imposible o de baja performance llevarla a cabo.
 
Un saludo a todos.
 
Jorge Croce
 

 

Date: Wed, 29 Apr 2009 07:31:11 +0000
From: anonimoatacante@yahoo.es
To: cooperatorframework@egrupos.net
Subject: Re: [cooperatorframework] Paginacion y Ordenacion con Cooperator


Hola,
 
en la página aspx, qué código de marcado hayque poner ?
 
Pensaba que también había que tener un GridView y un ObjectDataSource.
 
Y tener dos métodos para SelectMethod y el SelectCountMethod (el que hace COUNT(*) con el mismo filtro que el SelectMethod)
 
<:ObjectDataSource ID="ods1" runat="server"
OldValuesParameterFormatString="original_{0}"
SelectMethod="GetXXX"
SelectCountMethod="GetXXXCount"
TypeName="xxxx"
EnablePaging="true"
SortParameterName="OrderBy">



De: Bernar <bernnar@gmail.com>
Para: Grupo Cooperator <cooperatorframework@egrupos.net>
Enviado: miércoles, 29 de abril, 2009 8:30:36
Asunto: [cooperatorframework] Paginacion y Ordenacion con Cooperator

Hola amigos, os escribo para contaros mi experencian en mi primera aplicacion ASP.NET y VB.NET, utilizando paginacion y ordenacion en un gridview
En mi caso, he creado un procedimiento almacenado para recuperar los articulos por familia de una pagina concreta:
(Esto son pruebas, no esta terminado, pero espero que os sirva.)


1. Debes activar AllowPaging a True, y controlar el evento PageIndexChanging

        Dim lista As ArticuloObjectList
        lista = Articulo.GetArticulosByFamilia(11, 1, 2)  (*)
        Dim vista As New ArticuloObjectListView(lista)
        grid.DataSource = vista
        Me.grid.DataBind()

2. En mi caso, he sobreescrito la clase parcial del Mapper del articulo, para disponer del metodo GetPageRowsByFamilia:

      Public Function GetPagedRowsByFamilia(ByVal param As String()) As ArticuloObjectList
            Return GetObjectListByAnyStoredProcedure("bernar_GetPagedRowsByFamilia", param)
        End Function

como trabajo con asp, hago lo mismo para los wrappers:

Namespace Wrappers
    Partial Public Class ArticuloMapperWrapper

        Public Function GetPagedRowsByFamilia(ByVal param As String()) As ArticuloObjectList
            Return Instance().GetPagedRowsByFamilia(param)
        End Function

    End Class

Ahora ya dispongo de un metodo para llamar a un procedimiento almacenado desde el wrapper:
En la clase Articulo, creo el siguiente metodo:

    Public Shared Function GetArticulosByFamilia(ByVal codFamilia As String, ByVal index As Integer, ByVal count As Integer) As ArticuloObjectList
        Dim r As New ArticuloMapperWrapper
        Dim p(2) As String
        Dim t1, t2, t3 As String
        t1 = codFamilia
        t2 = index.ToString
        t3 = count.ToString
        p(0) = t1
        p(1) = t2
        p(2) = t3

        Return r.GetPagedRowsByFamilia(p)
    End Function

Este metodo es llamado en el evento grid_PageIndexChaning (*)

3. Para la ordenacion,debes controlar el evento _sorting

 Protected Sub grid_Sorting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewSortEventArgs) Handles grid.Sorting
        Dim lista As ArticuloObjectList
        lista = Articulo.GetArticulosByFamilia(11, 1, 2)
        Dim vista As New ArticuloObjectListView(lista)
        vista.Sort("Nombre", True)
        grid.DataSource = vista
        Me.grid.DataBind()
    End Sub
(Este evento esta en pruebas, evidentemente, solo ordena por <Nombre>.)


4. Este es el procedimiento almacenado que he creado.


set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

-- =============================================
-- Author:        <Author,,Name>
-- Create date: <Create Date,,>
-- Description:    <Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[GetPagedRowsByFamilia]
    @idFamilia nvarchar(10),
    @PageIndex int,
    @PageSize int
   
AS
BEGIN

WITH TotalLineas AS (
SELECT ROW_NUMBER() OVER (ORDER BY Codigo ASC) AS Row,
[Codigo],
[idArticuloFamilia],
[Nombre],
[Descripcion],
[PVenta],
[Iva],
[UdCaja],
[Referencia],
[CtdMinimaVenta],
[FamiliaAux],
[dbo].[coop_ArticuloFamilia_GetDescription](idArticuloFamilia) AS ArticuloFamiliaString
FROM [dbo].[Articulo]
WHERE [idArticuloFamilia] = @idFamilia )


SELECT
[Codigo],
[idArticuloFamilia],
[Nombre],
[Descripcion],
[PVenta],
[Iva],
[UdCaja],
[Referencia],
[CtdMinimaVenta],
[FamiliaAux],
[dbo].[coop_ArticuloFamilia_GetDescription](idArticuloFamilia) AS ArticuloFamiliaString
FROM TotalLineas
WHERE Row BETWEEN (@PageIndex - 1) * @PageSize + 1 and @PageIndex*@PageSize

END





--------------------------------------------------------------------- 
Tu dirección de suscripción a este grupo es anonimoatacante@yahoo.es 
Para darte de baja, envía un mensaje a 
cooperatorframework-baja@egrupos.net 
Para obtener ayuda, visita http://www.egrupos.net/grupo/cooperatorframework 
 




Aumentando tus ingresos.
Gracias a la tecnologia,ahora puedes aumentar tus ingresos.
No te quedes atras.Ven y ve.
Construyendo el futuro.
¿Quieres ver tu publicidad aquí?




Ve, guarda y comparte lo que te interesa en la red
Crear o visitar páginas a las que puedes añadir aquellas cosas interesantes que te encuentras porla web. ¿A qué esperas?
es.corank.com

--------------------------------------------------------------------- 
Tu dirección de suscripción a este grupo es jorgecroce@hotmail.com
Para darte de baja, envía un mensaje a cooperatorframework-baja@egrupos.net Para obtener ayuda, visita http://www.egrupos.net/grupo/cooperatorframework





Color coding for safety: Windows Live Hotmail alerts you to suspicious email. Sign up today.


--------------------------------------------------------------------- 
Tu dirección de suscripción a este grupo es daniel.calvin@gmail.com 
Para darte de baja, envía un mensaje a  
cooperatorframework-baja@egrupos.net 
Para obtener ayuda, visita http://www.egrupos.net/grupo/cooperatorframework 
 




--
Daniel A. Calvin
Cooperator Team Member
http://www.cooperator.com.ar
Microsoft Certified Professional


Inicio | Apúntate | Blogs | Bazar | Grupos | Gente | Fotos | Videos | Quienes somos | Privacidad de Datos | Contacta

eGrupos es un servicio de AR Networks
Copyright © 1999-2012 AR Networks, Todos los derechos reservados
Terminos del Servicio