none
deplacer le compteur dans une liste RRS feed

  • Question

  • Bonjour à tous

    un petit souci de presentation : j'affiche une liste sur laquelle je fais un total sur le champ"nom" . Le pb c'est l'endroit ou se postionne ce compteur( dans la colonne concernée et sous la ligne d'entête). J'essaie de modifier le contenu xslt à partir de sharepoint designer mais j'ai sans arrêt des pb de balises mal placées ou impossibles à imbriquées. En fait je voudrais obtenir un resultat de ce type :

    Nb de lignes : 253

    nom                         prenom                                age                                  service

    Est ce qqun a déjà fait cela ?? Pour la modif du libellé c'est ok , mais pour le déplacement ça l'es bcp moins ;-(( Merci et bonne journée


    AL-Geoxia
    lundi 31 janvier 2011 10:54

Réponses

  • Je ne sais pas si c'est la meilleure façon de faire...Mais vous pouvez faire ce que vous voulez en ajoutant deux DataFormWebparts dans votre page pour la même liste. 

     Le premier dataformwebpart pourra afficher le nombre d'éléments dans la liste et le second pourra afficher les éléments.

    Le premier dataformwebpart peut être modifié comme dans l'article suivant (en anglais): http://www.sharepointusecases.com/index.php/2008/11/displaying-a-number-of-items-in-a-list-part-2/

    Supprimer l'entête du tableau de votre premier dataformwebpart.  Le code à supprimer ressemble à ceci:

    <tr valign=”top”>
    <xsl:if test=”$dvt_1_automode = ’1′” ddwrt:cf_ignore=”1″>
    <th class=”ms-vh“ width=”1%” nowrap=”nowrap”></th>
    </xsl:if><th class=”ms-vh“ nowrap=”nowrap”>Last Name</th>
    <th class=”ms-vh“ nowrap=”nowrap”>Modified By</th>
    <th class=”ms-vh“ nowrap=”nowrap”>Modified</th>
    </tr>

    Ensuite faite une recherche pour le bloc de code qui commence par <xsl:for-each select="$Rows">
    et se termine par </xsl:for-each>.

    Remplacer ce bloc de code par:

    <tr><td class="ms-vb">Nb de lignes : xsl:value-of select="count($Rows)"/>
       </td></tr>

    Vous aurez donc un webpart qui affichera le nombre de ligne.

    Le second DataFormWebPart sert à l'affichage des élements.  Je viens de tester et ça fonctionne bien.

     


    Serge Tremblay MVP SharePoint
    • Marqué comme réponse algeox vendredi 4 février 2011 07:31
    mardi 1 février 2011 03:44
    Auteur de réponse

Toutes les réponses

  • Je ne sais pas si c'est la meilleure façon de faire...Mais vous pouvez faire ce que vous voulez en ajoutant deux DataFormWebparts dans votre page pour la même liste. 

     Le premier dataformwebpart pourra afficher le nombre d'éléments dans la liste et le second pourra afficher les éléments.

    Le premier dataformwebpart peut être modifié comme dans l'article suivant (en anglais): http://www.sharepointusecases.com/index.php/2008/11/displaying-a-number-of-items-in-a-list-part-2/

    Supprimer l'entête du tableau de votre premier dataformwebpart.  Le code à supprimer ressemble à ceci:

    <tr valign=”top”>
    <xsl:if test=”$dvt_1_automode = ’1′” ddwrt:cf_ignore=”1″>
    <th class=”ms-vh“ width=”1%” nowrap=”nowrap”></th>
    </xsl:if><th class=”ms-vh“ nowrap=”nowrap”>Last Name</th>
    <th class=”ms-vh“ nowrap=”nowrap”>Modified By</th>
    <th class=”ms-vh“ nowrap=”nowrap”>Modified</th>
    </tr>

    Ensuite faite une recherche pour le bloc de code qui commence par <xsl:for-each select="$Rows">
    et se termine par </xsl:for-each>.

    Remplacer ce bloc de code par:

    <tr><td class="ms-vb">Nb de lignes : xsl:value-of select="count($Rows)"/>
       </td></tr>

    Vous aurez donc un webpart qui affichera le nombre de ligne.

    Le second DataFormWebPart sert à l'affichage des élements.  Je viens de tester et ça fonctionne bien.

     


    Serge Tremblay MVP SharePoint
    • Marqué comme réponse algeox vendredi 4 février 2011 07:31
    mardi 1 février 2011 03:44
    Auteur de réponse
  • bonjour Serge et merci pour votre aide. Je dois juste vous preciser que je travaille avec sharepoint 2010. Je vies d'aller voir le lien que vous me conseillez mais il est apparemment spécifique à shp 2007. Le code xslt n'est en effet pas le même. Je ne sais pas  si je peux trouver l'équivalent de cette manip à partir du code 2010. Je vous tiens au courant pour valider cette réponse. Merci

     


    AL-Geoxia
    mardi 1 février 2011 07:37
  • Le test que j'ai fait est avec SharePoint 2010.  Il faut ajouter un DataView WebPart (DataForm WebPart) et non un Listview WebPart.  Effectivement le code n'est pas pareil avec le ListView WebPart.

    Pour ajouter un Dataview Webpart, cliquez sur insérer/vues de données/vue de données vide.  Vous pourrez sélectionner la liste que vous voulez utiliser.

    La vidéo suivante (en anglais) explique bien la diffrence entre le listview et Dataview Wp.

    http://www.youtube.com/watch?v=r2eODYHp73A

     


    Serge Tremblay MVP SharePoint
    mardi 1 février 2011 13:38
    Auteur de réponse
  • ah bon sang c'est pas hyper intuitif !! j'essayais de passer par l'insertion d'un composant webpart" qui étati desactivé et je suis parti "en vrille" " ;-)) OK , milles mercis pour votre aide ... je finirai le test définitif demain , mais la effectivement l'ajout du DataForm WebPart se fait bien.

     


    AL-Geoxia
    mardi 1 février 2011 15:39
  • bonjour Serge

    Compte rendu du test : le compteur de ligne reste égal à 1 alors que j'ai 1679 lignes!

    J'ai bien inséré un dataformWebPart , supprimé l'entête et  le bloc for each et l'ai remplacé par la ligne

    <tr><td class="ms-vb">Nb de lignes : xsl:value-of select="count($Rows)"/>
       </td></tr

    ???? je ne saisis pas ce que je ne fais pas bien ?

     


    AL-Geoxia
    mercredi 2 février 2011 09:14
  • Moi non plus je ne sais pas...Essayez  avec une autre liste.  ça fonctionne bien pour moi. Lorsque j'ajoute des items dans la liste, le compteur change pour la bonne valeur.
    Serge Tremblay MVP SharePoint
    vendredi 4 février 2011 03:09
    Auteur de réponse
  • ok ... merci je valide quand même votre réponse car je pense qu'elle m'a bien orienté même si je n'obtiens pas le resultat final escompté ... ceci dit dernier point : j'utilise une liste externe (via bdc) et non une liste sharepoint. Est ce que ça change le problème ? Merci encore. Bonne fin de semaine
    AL-Geoxia
    vendredi 4 février 2011 07:31