Power BI:尝试通过 PowerShell API 调用更新参数。

4

我正在尝试使用PowerShell脚本通过Power BI rest api更新数据集参数,但遇到了一些困难。

我参考了以下资源编写了我的脚本:

https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/updateparameters https://community.powerbi.com/t5/Developer/Update-parameters-through-Powershell/td-p/1167203

我相信语法已经写对了,但这个脚本有时会返回错误,并且运行后数据集没有任何变化。

我定义了一个叫做ReportVersion的字符串参数,我正在尝试更新它。该参数已启用“启用加载”并在报表中可见。

这是我的尝试方法:

Import-Module MicrosoftPowerBIMgmt

Connect-PowerBIServiceAccount

$datasetId = "my dataset id"

$urlUpdateParams = "https://api.powerbi.com/v1.0/myorg/datasets/$($datasetId)/Default.UpdateParameters"

$body = '{
    "updateDetails": [
    {
        "name": "ReportVersion",
        "newValue": "2.0"
    }
    ]
}'

$content = 'application/json'
                
Invoke-PowerBIRestMethod -Url $urlUpdateParams -Method POST -Body $body -ContentType $content

Disconnect-PowerBIServiceAccount

我收到的错误信息看起来像这样:

At C:\...\Power BI report upload tool 10.ps1:83 char:17
+ ...             Invoke-PowerBIRestMethod -Url $urlUpdateParams -Method PO ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   + CategoryInfo          : WriteError: (Microsoft.Power...werBIRestMethod:InvokePowerBIRestMethod) [Invoke-PowerBIRestMethod], AggregateException
   + FullyQualifiedErrorId : One or more errors occurred.,Microsoft.PowerBI.Commands.Profile.InvokePowerBIRestMethod

你能帮我确定出现了什么问题吗?

提前感谢,

Mike

1个回答

3
我知道这个问题在2020年就被问了,但我要在两年后回答它,以帮助任何被卡住的人。
当参数的数据类型设置为ANY时,参数值是不可编辑的。 请确保您的参数数据类型不是设置为ANY,而是必须设置为文本或十进制数。
链接中提供的图片展示了如何更改参数类型: Parameters

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接