Forum Discussion

ajaquib's avatar
ajaquib
Frequent Visitor
2 years ago
Solved

How get the Database name, Server Name, Dataset, Report Name and Workspace Name using PowerShell

Need help in exporting Database name, Server Name, Dataset, Report Name and Workspace Name using PowerShell.

Can someone help me with the script?

  • $Workspaces = Get-PowerBIWorkspace -All
    $Reports = ForEach ($workspace in $Workspaces) {
    Write-Host $workspace.Name
    ForEach ($report in (Get-PowerBIReport -WorkspaceId $workspace.Id)) {

    ForEach ($datasource in (Get-PowerBIDatasource -DatasetId $report.DatasetId)) {
    [pscustomobject]@{
    WorkspaceID = $workspace.Id
    WorkspaceName = $workspace.Name
    ReportID = $report.Id
    ReportName = $report.Name
    DatasetID = $report.DatasetId
    DataSourceName = $datasource.name
    ConnectionString = $datasource.ConnectionString
    ConnectionServer = $datasource.ConnectionDetails.Server
    ConnectionDatabase = $datasource.ConnectionDetails.Database
    ConnectionUrl = $datasource.ConnectionDetails.Url
    GatewayID = $datasource.GatewayId
    Datasoruceid = $datasource.DatasourceId
    }
    }
    }
    }
    $Reports | Export-Csv -Path <mention path> -NoTypeInformation

3 Replies

  • ajaquib's avatar
    ajaquib
    Frequent Visitor

    Hi 

     

    Need to extract the data using Powershell scripts.
    Is it possible to get Database name, Server Name, Report Name and Workspace Name using Powershell script?
    or Can we get list of Power BI report, workspace which are using specific datasource?

    • ajaquib's avatar
      ajaquib
      Frequent Visitor

      $Workspaces = Get-PowerBIWorkspace -All
      $Reports = ForEach ($workspace in $Workspaces) {
      Write-Host $workspace.Name
      ForEach ($report in (Get-PowerBIReport -WorkspaceId $workspace.Id)) {

      ForEach ($datasource in (Get-PowerBIDatasource -DatasetId $report.DatasetId)) {
      [pscustomobject]@{
      WorkspaceID = $workspace.Id
      WorkspaceName = $workspace.Name
      ReportID = $report.Id
      ReportName = $report.Name
      DatasetID = $report.DatasetId
      DataSourceName = $datasource.name
      ConnectionString = $datasource.ConnectionString
      ConnectionServer = $datasource.ConnectionDetails.Server
      ConnectionDatabase = $datasource.ConnectionDetails.Database
      ConnectionUrl = $datasource.ConnectionDetails.Url
      GatewayID = $datasource.GatewayId
      Datasoruceid = $datasource.DatasourceId
      }
      }
      }
      }
      $Reports | Export-Csv -Path <mention path> -NoTypeInformation