Créer automatiquement des listes SharePoint

Grâce à PowerShell, vous allez créer automatiquement des listes SharePoint Online, ainsi que leurs colonnes et leurs valeurs.

Grâce aux exemples, vous allez manipuler 4 listes très différentes. La première liste est la plus simple. La dernière liste est plus complexe car vous allez modifier les valeurs par défaut, ajouter des colonnes ainsi que des éléments.

Installer le module Pnp.PowerShell pour créer automatiquement des listes SharePoint

Le module PnP.PowerShell est le successeur de SharePointPnPPowerShellOnline.

L’installation de ce module peut se faire avec PowerShell en l’exécutant en tant qu’administrateur (« runas »).

Sinon, vous pouvez installer le module uniquement pour l’utilisateur en cours. En effet, cela évite d’exécuter PowerShell en tant qu’administrateur. C’est le scénario choisi ci-dessous.

Install-Module -Name PnP.PowerShell -Force -Scope CurrentUser

Se connecter au site en MFA

Il existe d’autre scénarios de connexion : voir dans la source ci-dessous. Toutefois, le mode MFA (Multi Factor Authentication) est le plus fréquent. Pour mémoire, le mode MFA consiste à disposer d’un mécanisme supplémentaire d’approbation de son authentification.

Généralement, vous recevez un code via un téléphone. Vous pouvez aussi utiliser une application du téléphone comme Microsoft Authenticator ou Google Authenticator.

Par ailleurs, il existe d’autres mécanismes.

$site = "sanseffort.sharepoint.com/sites/extranet"
Connect-PnPOnline -Url $site -UseWebLogin

Créer automatiquement des listes SharePoint : créer une liste d’annonces

La liste lstAnnonces est une simple liste personnalisée (GenericList) sans colonne supplémentaire, ni valeur.

Notamment, c’est l’exemple le plus simple.

New-PnPList -Title lstAnnonces -Template GenericList

Créer automatiquement des listes SharePoint : créer une liste métier

La liste lstProducteurs recense les producteurs avec leur nom, leur pays et le prix unitaire de leur fruit.

Dans cette liste SharePoint Online, vous allez ajouter des colonnes à l’aide de PowerShell. Notamment, vous trouverez juste en-dessous la procédure pour le faire.

New-PnPList -Title lstProducteurs -Template GenericList
Créer la liste lstProducteurs avec PowerShell dans SharePoint Online
Créer la liste lstProducteurs avec PowerShell dans SharePoint Online

Créer automatiquement des listes SharePoint : ajouter des colonnes à la liste métier

Deux colonnes sont ajoutées : 1) la colonne Provenance de type Choix (Choice) avec les valeurs : France, Portugal, Italie, Espagne ; 2) la colonne PU de type Devise (Currency).

Notamment, ces colonnes sont ajoutées à l’affichage par défaut (AddToDefaultView).

Add-PnPField -List "lstProducteurs" -InternalName "Provenance" -DisplayName "Provenance" -Type Choice -Group "Provenance Groupe" -Choices "France","Portugal","Italie","Espagne" -AddToDefaultView

Add-PnPField -List "lstProducteurs" -Type Currency -InternalName "PU" -DisplayName "PU" -AddToDefaultView

Créer une autre liste SharePoint métier

La liste lstFruits recense des fruits, avec leur stock restant, les saisons de production et le nom de leur producteur.

Premièrement, vous allez ajouter des colonnes supplémentaires à la liste SharePoint Online à l’aide de PowerShell.

Ensuite, vous modifierez la valeur par défaut d’une colonne à l’aide d’une cmdlet PowerShell.

Enfin, vous trouverez les procédures ci-dessous.

New-PnPList -Title lstFruits -Template GenericList
Créer la liste lstFruits avec PowerShell dans SharePoint Online
Créer la liste lstFruits avec PowerShell dans SharePoint Online

Ajouter les colonnes à l’autre liste métier

Trois colonnes sont ajoutées : 1) la colonne Stock de type Nombre (Number) ; 2) la colonne Saisons de type Choix (Choice) avec les valeurs : Printemps, Été, Automne, Hiver ; 3) la colonne Producteur de type Une seule ligne de texte (Text).

Notamment, ces colonnes sont ajoutées à l’affichage par défaut (AddToDefaultView).

Add-PnPField -List "lstFruits" -Type Number -InternalName "Stock" -DisplayName "Stock" -AddToDefaultView

Add-PnPField -List "lstFruits" -InternalName "Saisons" -DisplayName "Saisons" -Type Choice -Group "Saisons Groupe" -Choices "Printemps","Été","Automne","Hiver" -AddToDefaultView

Add-PnPField -List "lstFruits" -Type Text -InternalName "Producteur" -DisplayName "Producteur" -AddToDefaultView

Modifier les valeurs par défaut de la liste métier

La colonne Stock doit avoir la valeur 0 par défaut.

Set-PnPField -List "lstFruits" -Identity "Stock" -Values @{DefaultValue="0"}

Créer une troisième liste SharePoint métier

La liste lstAffaires recense toutes les affaires commerciales de la société. Elle contiendra la liste de toutes les affaires en cours de la boutique.

Notamment, une affaire est généralement la vente d’un lot d’un même jouet à un distributeur ou une boutique.

Ensuite, à l’aide de cmdlets PowerShell, vous allez ajouter des colonnes supplémentaires à la liste SharePoint Online.

Puis, vous allez modifier la valeur par défaut de certaines colonnes à l’aide de commandes PowerShell.

Enfin, vous ajouterez des éléments à la liste SharePoint Online, grâce à la cmdlet Add-PnPListItem.

L’ajout de colonnes est indiqué ci-dessous, ainsi que la modification des valeurs par défaut de certaines colonnes de la liste et l’ajout de valeurs dans la liste SharePoint.

New-PnPList -Title lstAffaires -Template GenericList 
Créer la liste lstAffaires avec PowerShell dans SharePoint Online
Créer la liste lstAffaires avec PowerShell dans SharePoint Online

Ajouter les colonnes à la dernière liste SharePoint

Maintenant, vous allez créer les 8 colonnes suivantes :

  • IDAffaire, de type : Une ligne de texte (Text)
  • Responsable, de type : Personne (User)
  • MontantHT, de type : Devise (Currency)
  • LivraisonDate, de type : Date (DateTime)
  • LivraisonEtranger, de type : Oui/Non (Boolean)
  • FournisseurID, de type : Une ligne de texte (Text)
  • Etat, de type : Choix (Choice)
  • FinWkf, de type : Une ligne de texte (Text)
Add-PnPField -List "lstAffaires" -Type Text -InternalName "IDAffaire" -DisplayName "IDAffaire" -AddToDefaultView

Add-PnPField -List "lstAffaires" -Type User -InternalName "Responsable" -DisplayName "Responsable" -AddToDefaultView

Add-PnPField -List "lstAffaires" -Type Currency -InternalName "MontantHT" -DisplayName "MontantHT" -AddToDefaultView

Add-PnPField -List "lstAffaires" -Type DateTime -InternalName "LivraisonDate" -DisplayName "LivraisonDate" -AddToDefaultView

Add-PnPField -List "lstAffaires" -Type Boolean -InternalName "LivraisonEtranger" -DisplayName "LivraisonEtranger" -AddToDefaultView

Add-PnPField -List "lstAffaires" -Type Text -InternalName "FournisseurID" -DisplayName "FournisseurID" -AddToDefaultView

Add-PnPField -List "lstAffaires" -InternalName "Etat" -DisplayName "Etat" -Type Choice -Group "Etat Groupe" -Choices "Neuf","Comme neuf","Très bon","Bon","Acceptable" -AddToDefaultView

Add-PnPField -List "lstAffaires" -Type Text -InternalName "FinWkf" -DisplayName "FinWkf" -AddToDefaultView

Modifier les valeurs par défaut de la dernière liste SharePoint

En particulier, les 4 colonnes suivantes doivent avoir une valeur par défaut spécifique :

  • MontantHT : 0
  • LivraisonEtranger, de type : 0
  • FournisseurID, de type : -1
  • FinWkf, de type : Non
Set-PnPField -List "lstAffaires" -Identity "MontantHT" -Values @{DefaultValue="0"}

Set-PnPField -List "lstAffaires" -Identity "LivraisonEtranger" -Values @{DefaultValue="0"}

Set-PnPField -List "lstAffaires" -Identity "FournisseurID" -Values @{DefaultValue="-1"}

Set-PnPField -List "lstAffaires" -Identity "FinWkf" -Values @{DefaultValue="Non"}

Ajouter des éléments à la dernière liste SharePoint

Dans la liste SharePoint Online, vous allez ajouter 5 éléments à l’aide de commandes PowerShell.

Add-PnPListItem -List "lstAffaires" -Values @{"Title"="Ours en peluche";IDAffaire="400";MontantHT=18;LivraisonEtranger=0;FournisseurID=5;Etat="Très bon";FinWkf="Non"}

Add-PnPListItem -List "lstAffaires" -Values @{"Title"="Poupée";IDAffaire="300";MontantHT=28;LivraisonEtranger=0;FournisseurID=10;Etat="Très bon";FinWkf="Non"}

Add-PnPListItem -List "lstAffaires" -Values @{"Title"="Camion de pompiers";IDAffaire="200";MontantHT=26;LivraisonEtranger=0;FournisseurID=15;Etat="Bon";FinWkf="Non"}

Add-PnPListItem -List "lstAffaires" -Values @{"Title"="Jeu de réflexion 8 à 12 ans";IDAffaire="500";MontantHT=32;LivraisonEtranger=0;FournisseurID=5;Etat="Bon";FinWkf="Non"}

Add-PnPListItem -List "lstAffaires" -Values @{"Title"="Belle voiture rouge";IDAffaire="100";MontantHT=28;LivraisonEtranger=0;FournisseurID=10;Etat="Neuf";FinWkf="Non"}

La manipulation est terminée.


Publié

dans

par

Étiquettes :

Commentaires

Laisser un commentaire

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