Blog créé grâce à Iblogyou. Créer un blog gratuitement en moins de 5 minutes.

Sharpoint pour les geeks

mes truc & astuces sur SPS

SPGridView menu Filter sort by Date Posté le Mardi 8 Avril 2008 à 19h51

 

Après beaucoup de recherche, la seule façon que j'ai trouvée pour trier par date, les pop-ups associés au filtre dans le menu sur une colonne contenant des type Date d'un SPGridView.

 

Pour faire cela

Dans le réptoire "12"

Dans le fichier "spgridview.js"

 

Surdéfinire la méthode js : "SPGridView_FilterCallbackHandler"

 

modifier la ligne "values=result.split(';');"

 

par l'utilisation du sort sur nos éléments. contenu dans la variable 'result'.

 

 try{
        values = result.split(';').sort(myfuncdetris);
    }
    catch(ex)
    {
        values = result.split(';');
    }

 

Et dans le même fichier rajouter la fonction d'implémentation du tri :

(C'est pas la plus jolie que j'ai faite !)

 

function myfuncdetris(dt1,dt2)
{
   var arDateDebut = (dt1.substr(0,10)).split("/");
   var arDateFin = (dt2.substr(0,10)).split("/");

    var dtDebut = new Date(eval(arDateDebut[2]),eval(arDateDebut[1]),eval(arDateDebut[0]));
    var dtFin   = new Date(eval(arDateFin[2]),eval(arDateFin[1]),eval(arDateFin[0]));

    if( dtDebut > dtFin )
        return -1 ;
     if(dtDebut < dtFin )
        return 1 ;
    return 0;
}

 

Rmq:

L'exemple précédent est valable pour les dates fr, mais un autre type de tris pourrait être utilisé pour d'autre type de donnée.

 

Evidement pour être un peut moins dirty, on ajoutes ces deux méthodes dans un fichier "js" qui est ajouter dans la master page après les fichiers de 12.

et on ne touche pas aux fichiers js du répertoire 12 !

 

 

 

 

0 commentaire - Permalien - Partager
Commentaires