如何使用SQL Agent Job启动Power BI数据集刷新

时间:2020-06-27 12:56:20

标签: sql-server powershell powerbi sql-agent

在某些要求下,我仅在SQL Agent作业完成后才必须启动Power BI数据集刷新。我的计划是在代理作业中添加一个步骤,以便它可以调用Power BI Data刷新。任何人都知道如何实现这一目标。

谢谢。

1 个答案:

答案 0 :(得分:1)

执行此操作的第一步是使用PowerShell。安装Microsoft Power BI Management CmdLets并添加一个PowerShell step以执行以下脚本:

Import-Module MicrosoftPowerBIMgmt
Import-Module MicrosoftPowerBIMgmt.Profile

$password = "xxxxx" | ConvertTo-SecureString -asPlainText -Force
$username = "xxxxx@yyyyy.com" 
$credential = New-Object System.Management.Automation.PSCredential($username, $password)

Connect-PowerBIServiceAccount -Credential $credential

Invoke-PowerBIRestMethod -Url 'groups/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/datasets/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/refreshes' -Method Post

Disconnect-PowerBIServiceAccount

它将调用Refresh Dataset In Group REST API来启动数据集刷新。

将x-es替换为组/工作区ID和实际数据集ID。还提供有效的凭证。这是最简单的方法,但是您也可以使其与service principal一起使用。