Club Power BI

Please login or click SIGN UP FOR FREE to create your PowerBIUG account to join this user group.
 View Only
Expand all | Collapse all

PowerShell - Administrer Power BI

  • 1.  PowerShell - Administrer Power BI

    Top Contributor
    Posted Oct 05, 2019 12:29 PM
    Edited by Jonathan CHANAL Oct 05, 2019 12:38 PM
    Salut les Power BI User,

    Je partage avec vous un script Power Shell que nous avons créé dans mon entreprise pour lister l'ensemble des espaces de travail, jeux de données et rapports créés sur notre tenant.

    C'était pour moi impératif de pouvoir faire un état des lieux précis de l'environnement Power Bi dans lequel j'allais travailler, cela pourra peut-être servir à d'autres.

    Pour commencer, il faut installer les cmdlets Power Bi pour que Power Shell puisse exécuter les commandes. Il vous faut également les droits d'administration pour pouvoir exécuter ces commandes.

    J'ai installé un certain nombre, pour ne pas dire beaucoup... de cmdlets mais voici l'essentiel :

    Dans notre cas précis, ce sont surtout les modules MicrosoftPowerBIMgmt.Data et MicrosoftPowerBIMgmt.Workspaces
    qui nous seront utiles. La documentation se trouve ici et ici si nécessaire.

    Voici donc le script :
    Class Result{
    
        [string] $WorkspaceName
        [string] $WorkspaceId    
        [string] $ReportName
        [string] $ReportId    
        [string] $DataSetName
        [string] $DataSetID
        
    }
    
    $csvFileName =  "C:\Users\VotreNom\Documents\RecapPowerBI.csv" 
     
    Connect-PowerBIServiceAccount
    
    $result_final = [System.Collections.Generic.List[Result]]::new()
     
    $Result_GetPowerBIWorkspace = Get-PowerBIWorkspace -All
    Foreach ($Workspace in $Result_GetPowerBIWorkspace)
    {    
          
        $_powerBIReport = Get-PowerBIReport -WorkspaceId $Workspace.Id 
        Foreach ($Report in $_powerBIReport)
        {
            $data = [Result]::new()
        
            $data.WorkspaceId = $Workspace.Id
            $data.WorkspaceName = $Workspace.Name
            $data.ReportId = $Report.Id
            $data.ReportName = $Report.Name
            $data.DataSetID = $Report.DatasetId
            
            $_powerBIdataset = Get-PowerBIDataset -Id $Report.DatasetId
            if($_powerBIdataset -eq $null)
           
            {
                
                    $data.DataSetName = 'Get-PowerBIDataset est vide'
                    $result_final.Add($data)    
                        
            }else {
            
                Foreach ($dataset in $_powerBIdataset)
                {
                    
                    $data.DataSetName = $dataset.Name
                    $result_final.Add($data)
                   
                }
            
            }
            
        }
            
        
    }
    
     
    $delimiter = ";"
    
    $result_final | Export-csv -Path $csvFileName -Delimiter $delimiter -NoTypeInformation
    
    
    Get-PowerBIDataset -Scope Organization | Export-Csv -NoTypeInformation -Path "C:\Users\VotreNom\Documents\Datasets.csv"
    
    
    Disconnect-PowerBIServiceAccount

    * Vous devez juste modifier les deux chemins où seront enregistrés les fichiers, au début et à la fin du script.

    Il faut exécuter ce script dans Power Shell ou ISE en tant qu'administrateur.

    Deux fichiers sont créés par ce script, le premier contient presque toutes les informations à l'exception du nom du jeu de données de chaque rapport.

    Le second a été créé pour combler cette lacune car nous n'avons pas réussi à récupérer en une seule fois l'ensemble des informations. Si quelqu'un voit une solution, je suis preneur, je mettrai à jour ce post.

    Ensuite, chacun pourra analyser les données de ces deux fichiers comme il le souhaite. Pour ma part, j'ai opté pour Excel, j'ai importé ces données dans un modèle de données et en combinant deux requêtes, j'ai pu retrouver l'ensemble des informations de ces deux fichiers. Cela me donne un tableau croisé dynamique contenant les colonnes suivantes :

    • WorkspaceName
    • WorkspaceId
    • ReportName
    • ReportId
    • DatasetName
    • DataSetID
    • ConfiguredBy
    • IsRefreshable

    Pour moi c'est idéal pour savoir où j'en suis, dès lors qu'il commence à y avoir beaucoup d'espaces de travail, de jeux de données et de rapports.

    J'espère que cela sera utile à certain d'entre vous.

    Bon week-end à tous !

    ------------------------------
    Jonathan CHANAL
    Chef de Projet Digital / Data Analyst
    ------------------------------


  • 2.  RE: PowerShell - Administrer Power BI

    Silver Contributor
    Posted Oct 06, 2019 04:48 AM
    Bonjour Jonathan.

    Beaucoup de clients nous posent des questions autour de l'administration et de la gouvernance des espaces de travail Power BI. Le point de départ incontournable est la mise en place de scripts pour avoir une vision globale du tenant.
    Merci beaucoup pour ce partage qui intéressera tous les membres de ce forum.

    ------------------------------
    Joël CREST
    MVP Data Platform / MCSE Data Management & Analytics

    www.bonjourjoel.com
    https://www.linkedin.com/in/joelcrest/
    https://twitter.com/JoelCrest
    ------------------------------



  • 3.  RE: PowerShell - Administrer Power BI

    Top Contributor
    Posted Oct 06, 2019 05:50 AM
    Bonjour Joël,

    Merci beaucoup, content de voir que cela pourra servir. Je travaille depuis septembre à temps plein sur Power BI, je pense progresser rapidement et avoir de nouvelles choses à partager très vite. Le forum et la communauté Power BI m'ont beaucoup aidé depuis deux ans, c'est un juste retour des choses de pouvoir partager des infos dans l'autre sens pour une fois.

    A bientôt,

    ------------------------------
    Jonathan CHANAL
    Chef de Projet Digital / Data Analyst
    Grenoble
    ------------------------------



  • 4.  RE: PowerShell - Administrer Power BI

    Bronze Contributor
    Posted Oct 07, 2019 03:06 AM
    Merci pour le partage :)

    ------------------------------
    Thomas Idelot
    IS Responsible
    iXBlue
    St Germain en Laye
    33689613078
    ------------------------------



  • 5.  RE: PowerShell - Administrer Power BI

    Bronze Contributor
    Posted Nov 15, 2019 12:50 PM
    Edited by Franck Servant-Roumey Nov 15, 2019 12:51 PM
    MERCI Jonathan !!! Exactement ce que je cherche depuis quelques jours :-)
    Belle contribution au groupe !

    ----------------------------------------------------------
    Franck Servant-Roumey
    Directeur Conseil chez H.A! / Histoire d'Adresses
    ----------------------------------------------------------




  • 6.  RE: PowerShell - Administrer Power BI

    Posted Oct 05, 2022 09:55 AM
    Merci Jonathan pour ce Poste. En, Revanche, autant qu'administrateur Power BI, quand j'exécute ton Script, j'aurais en sortie RecapPowerBI que les informations de mon propre compte et pas les comptes de tout mon organise. auriez vous une idée comment résoudre ce problème?
    Merci d'avance !

    ------------------------------
    Ilyes Mouhoubi
    Data Analyst
    ------------------------------



  • 7.  RE: PowerShell - Administrer Power BI

    Top Contributor
    Posted Oct 05, 2022 01:40 PM
    Bonjour Ilyes,
    Seuls les administrateurs Power BI auront accès à l'ensemble des données effectivement.
    Bon courage,

    ------------------------------
    Jonathan CHANAL
    Power BI Consultant/Formateur
    MCSA Power BI & Excel
    ------------------------------



  • 8.  RE: PowerShell - Administrer Power BI

    Posted Oct 05, 2022 01:49 PM
    Merci pour ton retour rapide Jonathan. Effectivement, je suis administrateur power Bi de mon organisme. Alors pour la table Datasets, j'ai tout récupérer par contre pour la table recap j'ai récupérer que les données de mon compte sachant que je suis débutant sur powershell.
    Merci d'avance de ton retour 






  • 9.  RE: PowerShell - Administrer Power BI

    Top Contributor
    Posted Oct 06, 2022 03:17 AM
    Hello

    Sinon tu peux tout simplement utiliser le scanner API.

    J'ai fais un club Power BI la dessus :

    https://youtu.be/x2_z58JVh4M

    ------------------------------
    Guillaume GAUDFROY
    Microsoft Data PlatForm MVP
    MCSA Power BI & Excel
    Microsoft MCT
    Ruby Award Dynamic Communities
    ------------------------------



  • 10.  RE: PowerShell - Administrer Power BI

    Posted Oct 07, 2022 04:47 AM
    Merci pour ce post @guillaume, c'est très intéressant !​

    ------------------------------
    Ilyes Mouhoubi
    Data Analyst
    ------------------------------