Disable column content edition

SP2013


Bonjour à tous,

Aujourd’hui je vais vous parler d’une fonctionnalité parfois demandée, rendre impossible la modification d’un champ d’une liste SharePoint.

Si empêcher l’affichage d’un champ dans le mode édit d’une liste peut se faire facilement via PowerShell, il ne faut pas oublier que les utilisateurs peuvent passer par le mode « Quick Edit » de la liste et donc bypasser cette configuration.

Pour pouvoir complètement interdire la modification d’un champ après la création de l’entrée, il faut donc passer par ces 2 étapes : Ne pas afficher le champ en mode édition et désactiver la vue « DataGrid ».

Si la seconde partie peut se faire via le menu « List settings » de la liste, la première requière un peu de développement (script PowerShell ou développement Visual Studio).

Le PowerShell étant plus rapide à mettre en place, voici le script permettant d’effectuer les 2 actions :

Add-PSSnapin Microsoft.SharePoint.PowerShell –erroraction SilentlyContinue

$siteUrl=”Site url”

$ListUrl=”List relative url”

$columnName =”Column Name”

$web = Get-SPWeb -Identity “$siteUrl”

$list = $web.GetList($web.Url + $ListUrl)

$list.Fields[$columnName].ShowInEditForm=$false

$list.Fields[$columnName].Update()

$list.DisableGridEditing=$true

$list.Update()

$web.Dispose()

 

En espérant que ça aide

 

Christopher

Cet article, publié dans SharePoint 2010, SharePoint 2013, est tagué , . Ajoutez ce permalien à vos favoris.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s