Microsoft Power BI에 대한 PowerShell 참조를 시작합니다. 여기에서 Power BI를 대상으로 하는 PowerShell 모듈에 대한 리소스를 찾을 수 있습니다.
PowerShell 모듈
다음은 이 참조에서 다루는 Power BI PowerShell 모듈의 표입니다.
| 설명 | 모듈 이름 | PowerShell 갤러리 링크 |
|---|---|---|
| Power BI Cmdlet용 롤업 모듈 | NA |
|
| Power BI Cmdlet에 대한 관리 모듈 | MicrosoftPowerBIMgmt.Admin Module |
|
| Power BI Cmdlet에 대한 용량 모듈 | MicrosoftPowerBIMgmt.Capacities Module |
|
| Power BI Cmdlet에 대한 데이터 모듈 | MicrosoftPowerBIMgmt.Data Module |
|
| Power BI Cmdlet에 대한 프로필 모듈 | MicrosoftPowerBIMgmt.Profile Module |
|
| Power BI용 보고서 모듈 | MicrosoftPowerBIMgmt.Reports Module |
|
| Power BI용 작업 영역 모듈 | MicrosoftPowerBIMgmt.Workspaces Module |
|
지원되는 환경 및 PowerShell 버전
- Windows PowerShell v3.0 이상(.NET 4.7.1 이상 포함).
- PowerShell Core(v6) 이상: PowerShell Core에서 지원하는 모든 OS 플랫폼.
설치
cmdlet은 PowerShell 갤러리에서 사용할 수 있으며 관리자 권한 PowerShell 세션에 설치할 수 있습니다.
Install-Module -Name MicrosoftPowerBIMgmt
선택적으로 롤업 모듈 대신 개별 모듈(필요에 따라)을 설치할 수 있습니다(예: Workspaces 모듈만 원하는 경우).
Install-Module -Name MicrosoftPowerBIMgmt.Workspaces
이전 버전이 있는 경우 다음을 실행하여 최신 버전으로 업데이트할 수 있습니다.
Update-Module -Name MicrosoftPowerBIMgmt
제거(설치 해제)
모든 Power BI PowerShell cmdlet을 제거하려면 관리자 권한 PowerShell 세션에서 다음을 실행합니다.
Get-Module MicrosoftPowerBIMgmt* -ListAvailable | Uninstall-Module -Force
사용법
Power BI 엔터티와 상호 작용하는 cmdlet에서 지원되는 두 가지 범위는 다음과 같습니다.
- Individual은 현재 사용자에게 속한 엔터티에 액세스하는 데 사용됩니다.
- 조직은 회사 전체의 엔터티에 액세스하는 데 사용됩니다. Power BI 테넌트 관리자만 사용할 수 있습니다.
-Scope 매개 변수가 cmdlet에 없는 경우 엔터티는 관리 API를 지원하지 않습니다.
Power BI에 로그인
Connect-PowerBIServiceAccount # or use aliases: Login-PowerBIServiceAccount, Login-PowerBI
작업 공간 가져오기
사용자의 작업 영역을 가져옵니다. 기본적으로(즉, 매개 변수 없이 -First ) 사용자에게 할당된 처음 100개의 작업 공간이 표시됩니다.
Get-PowerBIWorkspace
매개 변수를 -All 사용하여 사용자에게 할당된 모든 작업 공간을 표시합니다.
Get-PowerBIWorkspace -All
테넌트 관리자인 경우 다음을 추가하여 -Scope Organization테넌트의 모든 작업 영역을 볼 수 있습니다.
Get-PowerBIWorkspace -Scope Organization -All
작업 영역 업데이트
사용자 작업 영역의 이름 또는 설명을 업데이트합니다.
Set-PowerBIWorkspace -Scope Organization -Id "3244f1c1-01cf-457f-9383-6035e4950fdc" -Name "Test Name" -Description "Test Description"
작업 영역에 새 사용자 추가
지정된 작업 영역에 사용자를 추가합니다.
Add-PowerBIWorkspaceUser -Scope Organization -Id 3244f1c1-01cf-457f-9383-6035e4950fdc -UserEmailAddress john@contoso.com -AccessRight Admin
지정된 작업 영역에서 사용자 제거
지정된 작업 영역에서 사용자의 권한을 제거합니다.
Remove-PowerBIWorkspaceUser -Scope Organization -Id 3244f1c1-01cf-457f-9383-6035e4950fdc -UserEmailAddress john@contoso.com
작업 영역 마이그레이션 상태 가져오기
Power BI 작업 영역 마이그레이션 상태 가져오기:
Get-PowerBIWorkspaceMigrationStatus -Id 038f9a64-1fcd-42f2-957a-13a63b3d3235
작업 영역 복원
테넌트 관리자로 삭제된 작업 영역을 보려면:
Get-PowerBIWorkspace -Scope Organization -Deleted -All
삭제된 작업 영역을 복원합니다.
Restore-PowerBIWorkspace -Id "3244f1c1-01cf-457f-9383-6035e4950fdc" -RestoredName "TestWorkspace" -AdminEmailAddress "john@contoso.com"
분리된 작업 영역 복구
작업 영역은 할당된 관리자가 없는 경우 분리됩니다. 테넌트 관리자인 경우 다음을 실행하여 분리된 모든 작업 영역을 확인합니다.
Get-PowerBIWorkspace -Scope Organization -Orphaned -All
이 문제를 해결하려면 다음을 사용합니다.
Add-PowerBIWorkspaceUser -Scope Organization -Id f2a0fae5-1c37-4ee6-97da-c9d31851fe17 -UserPrincipalName 'john@contoso.com' -AccessRight Admin
보고서 받기
사용자에 대한 모든 보고서를 가져옵니다.
Get-PowerBIReport
테넌트 관리자인 경우 다음을 -Scope Organization할당하여 테넌트의 모든 보고서를 볼 수 있습니다.
Get-PowerBIReport -Scope Organization
대시보드 가져오기
사용자를 위한 대시보드를 가져옵니다.
Get-PowerBIDashboard
테넌트 관리자인 경우 다음을 추가하여 -Scope Organization테넌트의 모든 대시보드를 볼 수 있습니다.
Get-PowerBIDashboard -Scope Organization
타일 가져오기
대시보드 내에서 타일 가져오기:
Get-PowerBITile -DashboardId 9a58d5e5-61bc-447c-86c4-e221128b1c99
가져오기 가져오기
Power BI 가져오기 가져오기:
Get-PowerBIImport
보고서 만들기
*.pbix 파일을 업로드하여 Power BI에서 보고서를 만듭니다.
New-PowerBIReport -Path .\newReport.pbix -Name 'New Report'
기본적으로 보고서는 사용자의 내 작업 영역에 배치됩니다. 다른 작업 공간에 배치하려면 or -Workspace 매개 변수를 -WorkspaceId 사용합니다.
New-PowerBIReport -Path .\newReport.pbix -Name 'New Report' -WorkspaceId f95755a1-950c-46bd-a912-5aab4012a06d
보고서 내보내기
Power BI 보고서를 *.pbix 파일로 내보냅니다.
Export-PowerBIReport -Id b48c088c-6f4e-4b7a-b015-d844ab534b2a -OutFile .\exportedReport.pbix
작업 공간이 내 작업 공간 외부에 있는 경우 or -Workspace 매개 변수를 사용하여 내보냅니다.WorkspaceId
Export-PowerBIReport -Id b48c088c-6f4e-4b7a-b015-d844ab534b2a -OutFile .\exportedReport.pbix -WorkspaceId 3bdd9735-0ab5-4f21-bd5d-87e7f1d7fb84
데이터셋 가져오기
Power BI 데이터 세트 가져오기:
Get-PowerBIDataset
데이터셋 스토리지 모드 업데이트
스토리지 모드에 Premium Files를 사용하도록 Power BI 데이터 세트를 설정합니다.
Set-PowerBIDataset -Id 038f9a64-1fcd-42f2-957a-13a63b3d3235 -TargetStorageMode PremiumFiles
데이터 소스 가져오기
데이터 세트에 대한 Power BI 데이터 원본을 가져옵니다.
Get-PowerBIDatasource -DatasetId 65d7d7e5-8af0-4e94-b20b-50a882ae15e1
테이블 가져오기
데이터 세트에 포함된 Power BI 테이블을 가져옵니다.
Get-PowerBITable -DatasetId 65d7d7e5-8af0-4e94-b20b-50a882ae15e1
Power BI Rest API 호출
해당 cmdlet이 없는 Power BI API의 경우 인증된 세션을 다시 사용하여 사용자 지정 REST 요청을 수행할 수 있습니다.Connect-PowerBIServiceAccount
Invoke-PowerBIRestMethod -Url 'reports/4eb4c303-d5ac-4a2d-bf1e-39b35075d983/Clone' -Method Post -Body ([pscustomobject]@{name='Cloned report'; targetModelId='adf823b5-a0de-4b9f-bcce-b17d774d2961'; targetWorkspaceId='45ee15a7-0e8e-45b0-8111-ea304ada8d7d'} | ConvertTo-Json -Depth 2 -Compress)
PowerShell 외부에서 인증된 세션을 사용하려면 다음을 사용하여 액세스 토큰을 가져옵니다.
Get-PowerBIAccessToken -AsString
오류 해결
cmdlet에서 반환된 오류에 대한 자세한 내용을 보려면 다음을 사용합니다.
Resolve-PowerBIError -Last
이 정보는 Power BI에 대한 지원 티켓을 여는 데 유용할 수 있습니다.
문제점 및 의견
버그를 발견하거나 Power BI용 PowerShell Cmdlet에 대해 구현된 특정 기능을 확인하려는 경우 문제를 제출하세요.
문제가 PowerShell cmdlet뿐만 아니라 더 광범위한 경우 Power BI 커뮤니티 또는 공식 Power BI 지원 사이트에 피드백을 제출하세요.