Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Habilitamos a capacidade de atualizar as conexões dos relatórios do Power BI para DirectQuery e de realizar a atualização.
Importante
Essa também é uma alteração significativa sobre como você poderia configurar isso em versões anteriores.
Pré-requisitos
- Baixe a versão mais recente do Servidor de Relatórios do Power BI e do Power BI Desktop para o Servidor de Relatórios do Power BI.
- Um relatório salvo com o Power BI Desktop otimizado para o Servidor de Relatórios, com metadados avançados do Conjunto de Dados habilitados.
- Um relatório que usa conexões parametrizadas. Somente relatórios com conexões e bancos de dados parametrizados podem ser atualizados após a publicação.
- Este exemplo usa as ferramentas do PowerShell do Reporting Services. Você pode obter o mesmo usando as novas APIs REST.
Criar um relatório com conexões parametrizadas
Crie uma conexão do SQL Server com um servidor. No exemplo abaixo, estamos nos conectando ao localhost a um banco de dados chamado ReportServer e extraindo dados do ExecutionLog.
Veja a aparência da consulta M neste momento:
let Source = Sql.Database("localhost", "ReportServer"), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3Selecione Gerenciar Parâmetros na faixa de opções do Editor do Power Query.
Crie parâmetros para o nome do servidor e o nome do banco de dados.
Edite a consulta para a primeira conexão e mapeie o banco de dados e o nome do servidor.
Agora a consulta tem esta aparência:
let Source = Sql.Database(ServerName, Databasename), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3Publique esse relatório no servidor. Neste exemplo, o relatório é denominado executionlogparameter. A imagem a seguir é um exemplo de uma página de gerenciamento de fonte de dados.
Atualizar parâmetros usando as ferramentas do PowerShell
Abra o PowerShell e instale as ferramentas mais recentes do Reporting Services, seguindo as instruções em https://github.com/microsoft/ReportingServicesTools.
Para obter o parâmetro do relatório, use a nova API REST DataModelParameters usando a seguinte chamada do PowerShell:
Get-RsRestItemDataModelParameters '/executionlogparameter' Name Value ---- ----- ServerName localhost Databasename ReportServerSalvamos o resultado dessa chamada em uma variável:
$parameters = Get-RsRestItemDataModelParameters '/executionlogparameter'Mapeie em um dicionário para acessar os valores dos parâmetros.
$parameterdictionary = @{} foreach ($parameter in $parameters) { $parameterdictionary.Add($parameter.Name, $parameter); }Essa variável é atualizada com os valores que precisamos alterar.
Atualize os valores dos parâmetros desejados:
$parameterdictionary["ServerName"].Value = 'myproductionserver' $parameterdictionary["Databasename"].Value = 'myproductiondatabase'Com os valores atualizados, podemos usar o commandlet
Set-RsRestItemDataModelParameterspara atualizar os valores no servidor:Set-RsRestItemDataModelParameters -RsItem '/executionlogparameter' -DataModelParameters $parameters $parameterdictionary.ValuesDepois que os parâmetros são atualizados, o servidor atualiza todas as fontes de dados associadas aos parâmetros. Voltando à caixa de diálogo Editar fonte de dados , você deve ser capaz de definir credenciais para o servidor e o banco de dados atualizados.
Conteúdo relacionado
Mais perguntas? Tente perguntar à Comunidade do Power BI