Modificare le stringa di connessione dell'origine dati nei report di Power BI con PowerShell - Server di report di Power BI
È possibile aggiornare le connessioni per i report di Power BI per DirectQuery e aggiornare.
Importante
Si tratta anche di una modifica che causa un'interruzione della configurazione nelle versioni precedenti. Se si usa una versione precedente a ottobre 2020 di Server di report di Power BI, vedere Modificare le stringa di connessione dell'origine dati nei report di Power BI con PowerShell - Server di report di Power BI pre-ottobre 2020
Prerequisiti
- Scaricare la versione più recente di Server di report di Power BI e Power BI Desktop per Server di report di Power BI.
- Un report salvato con la versione di ottobre 2020 o successiva di Power BI Desktop ottimizzata per il server di report, con metadati del set di dati avanzati abilitati.
- Report che utilizza connessioni con parametri. Dopo la pubblicazione è possibile aggiornare solo i report con connessioni e database con parametri.
- In questo esempio vengono usati gli strumenti di PowerShell di Reporting Services. È possibile ottenere lo stesso risultato usando le nuove API REST.
Creare un report con connessioni con parametri
Creare una connessione SQL Server a un server. Nell'esempio seguente ci si connette al localhost a un database denominato ReportServer e si esegue il pull dei dati da ExecutionLog.
Ecco l'aspetto della query M a questo punto:
let Source = Sql.Database("localhost", "ReportServer"), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3
Selezionare Gestisci parametri nella barra multifunzione editor di Power Query.
Creare parametri per il nome server e il nome database.
Modificare la query per la prima connessione ed eseguire il mapping del database e del nome server.
La query avrà ora un aspetto simile al seguente:
let Source = Sql.Database(ServerName, Databasename), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3
- Pubblicare il report nel server. In questo esempio il report è denominato executionlogparameter. L'immagine seguente è un esempio di pagina di gestione dell'origine dati.
Aggiornare i parametri usando gli strumenti di PowerShell
Aprire PowerShell e installare gli strumenti di Reporting Services più recenti, seguendo le istruzioni riportate in https://github.com/microsoft/ReportingServicesTools.
Per ottenere il parametro per il report, usare la nuova API REST DataModelParameters usando la chiamata di PowerShell seguente:
Get-RsRestItemDataModelParameters '/executionlogparameter' Name Value ---- ----- ServerName localhost Databasename ReportServer
Il risultato di questa chiamata viene salvato in una variabile:
$parameters = Get-RsRestItemDataModelParameters '/executionlogparameter'
Eseguire il mapping a un dizionario per accedere ai valori dei parametri.
$parameterdictionary = @{} foreach ($parameter in $parameters) { $parameterdictionary.Add($parameter.Name, $parameter); }
Questa variabile viene aggiornata con i valori che è necessario modificare.
Aggiornare i valori dei parametri desiderati:
$parameterdictionary[“ServerName”].Value = 'myproductionserver' $parameterdictionary[“Databasename”].Value = 'myproductiondatabase'
Con i valori aggiornati, è possibile usare il commandlet
Set-RsRestItemDataModelParameters
per aggiornare i valori nel server:Set-RsRestItemDataModelParameters -RsItem '/executionlogparameter' -DataModelParameters $parameters $parameterdictionary.Values
Dopo l'aggiornamento dei parametri, il server aggiorna tutte le origini dati associate ai parametri. Tornare alla finestra di dialogo Modifica origine dati. Dovrebbe essere possibile impostare le credenziali per il server e il database aggiornati.
Contenuto correlato
Altre domande? Contattare la community di Power BI
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
In arrivo: Nel corso del 2024 verranno ritirati i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedi:Invia e visualizza il feedback per