SharePoint 2010: Script PowerShell – Créer une liste / Ajouter une colonne dans une liste personnalisée / Ajouter une colonne dans la vue

Parmi toutes les possibilités offertes par SharePoint 2010, sa gestion avec PowerShell est probablement une des plus puissantes, notamment pour les administrateurs.

Un bon exemple d’application est celui de pouvoir créer de nouvelles listes sur les sites par un script PowerShell.

Lors de la création d’une nouvelle liste, vous devez d’abord indiquer à SharePoint le modèle à utiliser. Pour lister tous les modèles, cliquez sur Start > All programs > Microsoft SharePoint 2010 Products > Microsoft SharePoint 2010 Products (Run as administrator):

$Web=Get-SPWeb http://demo
$Web.ListTemplates | Select Name, Description

Vous obtenez le nom et le début de la description de tous les modèles disponibles dans votre collection de sites. Choisissez le modèle que vous vous voulez et créez la liste avec la méthode Add().

$Template=$Web.ListTemplates[« Custom List »]
$Web.Lists.Add(« Commandes », »Liste des commandes »,$Template)

En cas de succès, SharePoint renvoie l’identifiant interne unique de la liste sur 32 caractères, le GUID.

Une fois la liste créée, il est pratiquement indispensable de rajouter des colonnes. Vous indiquez à SharePoint la liste sur laquelle vous travaillez, puis indiquez le type de la colonne et son nom, toujours avec la méthode Add().

$List=$web.Lists.TryGetList(« Commandes »)
$varFieldTypeTexte=[Microsoft.SharePoint.SPFieldType]::Text
$List.Fields.Add(« FruitID »,$varFieldTypeTexte,$false)

La colonne a bien été ajoutée, mais vous ne la voyez pas ! Pour la voir, vous allez dans les paramètres de la liste, et sous Colonnes, vous retrouvez bien:

FruitID Une seule ligne de texte

L’ajout de colonnes ne modifie (heureusement !) pas par défaut les affichages. C’est à vous de le faire. Il vous reste donc à modifier l’affichage par défaut

$View=$web.GetViewFromUrl(« http://demo/Lists/Commandes/AllItems.aspx »)
$Field=$List.Fields[« FruitID »]
$View.ViewFields.Add($Field)
$View.Update()

Voilà pour les principes. Vous trouverez ci-dessous un script PowerShell complet à télécharger.

Ce script créé une liste intitulée « Commandes » avec 4 colonnes (« FruitID », « FruitNom », « DateAchat », « Quantite »).

L’affichage par défaut (« AllItems.aspx ») de la liste est modifié pour faire apparaître les 4 colonnes.

SPListeCreer_V1_0_0.zip

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *