none
[SP10, PowerShell] - Valeur de retour d'une fonction incohérente + erreur PowerShell RRS feed

  • Question

  • Bonjour,

    J'essaye de mettre en place un script PowerShell permettant la création et le paramétrage automatique de sites SharePoint 2010, et je suis confronté à une erreur PowerShell et à quelque chose que je n'arrive pas à comprendre..

    Description de mon script : au départ, j'appelle une fonction "CreationSite" qui va me créer mon site en fonction de divers paramétres, et à la fin de cette fonction, je souhaite que l'url du site créé me soit retourné. J'ai besoin de l'url du site afin d'appeler une fonction "CreationGroupes" qui va créé automatiquement des groupes d'autorisation sur le site.

    Cependant, lorsque je fais un write-host de l'url dans ma fonction "CreationSite", j'obtiens bien l'url du site créé, mais lorsque je fais un write-host de la valeur retournée par cette fonction, j'obtiens une chaine de caractère différentes de celle du premier write-host.. Et du coup quand j'appel ma fonction "CreationGroupes" avec l'url retourné par la fonction "CreationSite" et que je fais un get-spweb dessus, j'ai une erreur sur ma console PowerShell que je n'avais pas vu encore et que je ne sais pas résoudre (j'ai essayé plein de tests de contournement, mais en vain..)

    Donc, j'aurais besoin de votre aide pour me dire
    - Pourquoi j'ai une chaine de caractère différente lorsque je récupère la valeur d'une variable retourner par une fonction ? Et comment le résoudre ?
    - Que signifie l'erreur retourner par la console PowerShell ?

    Info : je vous joint ci-dessous les parties concernées de mon script, et une copie d'écran de ma console PowerShell après exécution du script.

    Merci d'avance pour votre aide,
    Valentin.

    function CreationSite 
    {
        Param (
               [parameter(Mandatory=$true)]$titreSite,
    		   [parameter(Mandatory=$true)][Microsoft.SharePoint.SPListItem]$demande
    	)
    
    	$urlMonSite = $testUrl.Site.url
    	write-host "Url de mon site avant le RETURN : $urlMonSite`n"
    
    	return $urlMonSite
    }
    
    function CreationGroupes  
    {  
        param (
    			[parameter(Mandatory=$true)]$url, 
    			[parameter(Mandatory=$true)]$titreSite,
    			[parameter(Mandatory=$true)][Microsoft.SharePoint.SPListItem]$demande
    	)
    
        try
    	{	
    		$web = Get-SPWeb -Identity $url
    	}
        catch{}
        finally{}
    }
    
    # Création du site
    $urlMonSite2 = CreationSite -titreSite $titreSite -demande $demande
    
    write-host "Url de mon site après création : $urlMonSite2`n"
    		
    # Création des groupes de droits
    CreationGroupes -url $urlMonSite2 -titre $titreSite -demande $demande



    • Modifié MicroVal mercredi 15 avril 2015 10:07
    mercredi 15 avril 2015 10:06