Insérer le numéro de version SharePoint dans un document

Une question posée aujourd’hui qui m’a laissé perplexe : comment fait-on pour intégrer le numéro de version SharePoint dans le document ? Dans un précédent post, je vous avais présenté l’insertion des propriétés serveur. Malheureusement, cette propriété n’est pas disponible dans les champs à insérer.

La démarche consiste à utiliser un type de contenu et la fonctionnalité de stratégie de gestion des informations de SharePoint Server (SP Foundation est donc exclut).

Voici une méthode permettant de contourner ce manque :

  1. Dans la bibliothèque de documents :
    1. Activer la gestion des versions
    2. Activer les types de contenu
  2. Créer un nouveau type de contenu OU modifier un type de contenu existant OU dans un type de contenu que vous avez rattaché à la bibliothèque :
    1. Aller dans ‘Paramètres de la gestion de la stratégie des informations’
    2. Activer les étiquettes
      1. Attention : ne cochez pas les deux cases juste en dessus
      2. Donner le format suivant (le format sera “Version : 0.1” par exemple) : Version : {Version}
      3. Si vous actualisez l’aperçu, vous aurez une chaine de la forme Version : {_UIVersionString} : c’est normal !
    3. Enregistrer la modification
  3. Créer ou ouvrir un document existant dans votre bibliothèque :
    1. Menu Insérer > QuickPart > Propriétés du document > Etiquette :

image_thumb_774025ED

Après enregistrement le numéro de version sera inséré :

image_thumb_44CC2CA1

Bonne lecture

Mettre à jour les administrateurs du magasin de termes avec PowerShell

S’il vous prend d’envie d’ajouter un administrateur au magasin de termes du service de métadonnées avec PowerShell, voici quelques lignes de PowerShell pour le faire (fonctionne avec SharePoint 2010 et 2013) :

    $adminSite = Get-SPSite “http://sharepoint.contoso.prod:2013

    $taxoSession = Get-SPTaxonomySession -site $adminSite

    $metadataService = Get-SPMetadataServiceApplication – Identity “Managed Metadata Service”

    $termStore = $taxoSession.TermStores[$metadataService.DisplayName]

    $termStore.AddTermStoreAdministrator(“Domain\Nom utilisateur”)

    $termStore.CommitAll()

Erreur d’analyse de contenu “L’élément SharePoint en cours d’analyse a renvoyé une erreur lors de la demande de données auprès du service Web”

Que faire lorsque l’indexation du contenu de certaines collections de sites vous renvoie : “L’élément SharePoint en cours d’analyse a renvoyé une erreur lors de la demande de données auprès du service Web. ( Error from SharePoint site: Les données sont null. Cette méthode ou propriété ne peut pas être appelée sur des valeurs Null. )” ? (à part perdre son temps à créer de nouveaux proxies de recherche, à tester toutes les configurations possibles ou encore à scruter les logs avec minutie ?)

Il s’agit d’une erreur a priori  “bien connue” de Microsoft qui la détaille dans cette KB. Mais comment une telle erreur peut-elle bien se produire ? Mauvaise configuration du service de recherche ? Une réindexation sauvage ? Un proxy de service défaillant ? Non ! Il s’agit ‘tout simplement’ d’un bug dans votre code ou de celui de votre fournisseur, en effet le service d’indexation n’aime pas avoir la description d’un groupe avec une valeur null.

Mais comment fait-on pour avoir une description null d’un groupe : en l’ajoutant avec du code et en lui spécifiant une description null. Pour faire simple, voici un exemple de code menant à cette ‘erreur’ :

using (SPSite oSite = new SPSite(textBox1.Text))
{
                    using (SPWeb oWeb = oSite.OpenWeb())
                    {
                        SPGroupCollection oGroupColl = oWeb.SiteGroups;
                        SPUser oUser = oWeb.AllUsers[« domain\\user »];
                        oGroupColl.Add(« Testing Group », oUser, oUser, null);

                    }
          }

La KB propose un code pour corriger cela, mais on remerciera Damien NOBLET, pour avoir créé un outil efficace qui corrigera les groupes ‘défaillants’ en tout simplicité et qui disponible sur la plateforme Codeplex :  http://sp2010fixgroups.codeplex.com/ (un grand merci pour cet outil à Damien).