Résolu RECUPERER LE RESULTAT DANS UNE VARIABLE

Plus d'informations
il y a 1 an 2 semaines - il y a 10 mois 3 jours #33244 par DEMINFO
Bonjour,
Je me bats sans succès avec le code suivant :  
Get-MsolUser -UserPrincipalName $utilisateuroperation # | Select-Object Licenses | Format-List

J'aimerais pouvoir récupérer les noms des licences dans une variable. J'ai essayé une tonne de choses mais rien n'y fait.
Merci d'avance pour votre aide
Dernière édition: il y a 10 mois 3 jours par Arnaud Petitjean. Raison: Ajout de la balise code pour la mise en forme

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 2 semaines - il y a 10 mois 3 jours #33245 par Christophe MELIN
Bonjour,

Je n'utilise pas M365 mais l'aide en ligne de get-msoluser indique bien qu'il y a une propriété Licenses. Donc tu dois pouvoir essayer quelque chose de la forme :
$objUser = get-msoluser -UserPrincipalName $upn
$licenses = $objUser.licenses

Comme cette propriété peut être une liste, tu peux ensuite tout afficher avec
foreach( $license in $licenses ) {
   write-host $license
}
Dernière édition: il y a 10 mois 3 jours par Arnaud Petitjean.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 1 semaine - il y a 10 mois 3 jours #33246 par DEMINFO
Bonjour
Merci pour ce code qui malheureusement me donne toujours le même résultat.
Où est mon erreur ?

Le code :
$objUser = get-msoluser -UserPrincipalName $utilisateuroperation
$licenses = $objUser.licenses
Write-Host "licenses="$licences
#Comme cette propriété peut être une liste, tu peux ensuite tout afficher avec
foreach( $license in $licenses ) {
write-host "Licence="$license
}

Le résultat :
licenses= 
Licence= Microsoft.Online.Administration.UserLicense
Dernière édition: il y a 10 mois 3 jours par Arnaud Petitjean.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 1 semaine - il y a 10 mois 3 jours #33247 par Christophe MELIN
écris plutôt :
Write-Host "licenses=$licences"
et
write-host "Licence=$license"

Powershell interprête les variables $xxx dans les chaines entre double-quote. Si on veut afficher une propriété d'un objet, il faut mettre la référence dans $(...), ce qui donnerait :
Write-Host "licenses=$($objUser.licenses)"

Attention !!! la propriété Licenses peut être une liste donc soit tu laisses la boucle foreach pour afficher une license par ligne, soit tu concatènes proprement avec par exemple :
Write-Host "licenses=$($objUser.licenses -join ',')"
Si tu n'as toujours pas de résultat, est-ce que tu peux vérifier que l'objet $objUser est bien initialisé par la commande get-msoluser ?
Dernière édition: il y a 10 mois 3 jours par Arnaud Petitjean.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 1 semaine - il y a 10 mois 3 jours #33248 par DEMINFO
J'ai respecté ce que tu m'as dit (je l'espère !)

J'obtiens :
objUser=Microsoft.Online.Administration.User
licenses=
Dernière édition: il y a 10 mois 3 jours par Arnaud Petitjean.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 mois 3 jours #33334 par DEMINFO
Personne n'a rencontré cette problématique ?
Problématique sans solution ?

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.113 secondes
Propulsé par Kunena