Módosíthatja az adatforrások kapcsolati sztringjeit a Power BI-jelentésekben a PowerShell – Power BI jelentéskészítő kiszolgáló API-jaival
Lehetővé tesszük Power BI directQuery- és frissítési jelentések kapcsolatainak frissítését.
Fontos
Ez egyúttal kompatibilitástörő változás ahhoz képest, ahogy ezt a korábbi kiadásokban lehetett beállítani. Ha a Power BI jelentéskészítő kiszolgáló 2020. októberinél korábbi verzióját használja, lásd: Az adatforrások kapcsolati sztringjeinek módosítása a PowerShellel – 2020. októberinél korábbi Power BI jelentéskészítő kiszolgáló
Előfeltételek
- Töltse le a Power BI jelentéskészítő kiszolgáló Power BI jelentéskészítő kiszolgáló és Power BI Desktop legújabb kiadását.
- A jelentéskészítő kiszolgálóra optimalizált Power BI Desktop 2020. októberi vagy újabb kiadásával mentett jelentés, amelyen engedélyezve van a bővített adathalmaz-metaadatok használata.
- Egy paraméterezett kapcsolatokat használó jelentés. A közzététel után csak a paraméterezett kapcsolatokkal és adatbázisokkal rendelkező jelentések frissíthetők.
- Ez a példa a Reporting Services PowerShell-eszközeit használja. Ugyanezt az új REST API-k használatával érheti el.
Jelentés létrehozása paraméterezett kapcsolatokkal
Hozzon létre egy SQL Server-kapcsolatot egy kiszolgálóhoz. Az alábbi példában a localhosthoz kapcsolódunk egy ReportServer nevű adatbázishoz, és az adatokat az ExecutionLog naplóból kérjük le.
Az M-lekérdezés ekkor a következőképpen néz ki:
let Source = Sql.Database("localhost", "ReportServer"), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3
Válassza a Paraméterek kezelése lehetőséget a Power Query-szerkesztő menüszalagon.
Hozzon létre paramétereket a kiszolgálónévhez és az adatbázisnévhez.
Szerkessze az első kapcsolat lekérdezését, és rendelje hozzá az adatbázist és a kiszolgálónevet.
A lekérdezés most a következőképpen néz ki:
let Source = Sql.Database(ServerName, Databasename), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3
- Tegye közzé ezt a jelentést a kiszolgálón. Ebben a példában a jelentés neve executionlogparameter. Az alábbi kép egy példa egy adatforrás-kezelési oldalra.
A paraméterek frissítése a PowerShell-eszközökkel
Nyissa meg a PowerShellt, és telepítse a legújabb Reporting Services-eszközöket az itt található utasítások alapján: https://github.com/microsoft/ReportingServicesTools.
A jelentés paraméterének lekéréséhez használja az új REST DataModelParameters API-t a következő PowerShell-hívással:
Get-RsRestItemDataModelParameters '/executionlogparameter' Name Value ---- ----- ServerName localhost Databasename ReportServer
A hívás eredményét egy változóba mentjük:
$parameters = Get-RsRestItemDataModelParameters '/executionlogparameter'
Képezz le egy szótárra a paraméterértékek eléréséhez.
$parameterdictionary = @{} foreach ($parameter in $parameters) { $parameterdictionary.Add($parameter.Name, $parameter); }
Ezt a változót a módosítandó értékekkel frissítjük.
Frissítse a kívánt paraméterek értékeit:
$parameterdictionary[“ServerName”].Value = 'myproductionserver' $parameterdictionary[“Databasename”].Value = 'myproductiondatabase'
A frissített értékek használatával a
Set-RsRestItemDataModelParameters
parancsmaggal frissíthetjük a kiszolgáló értékeit:Set-RsRestItemDataModelParameters -RsItem '/executionlogparameter' -DataModelParameters $parameters $parameterdictionary.Values
A paraméterek frissítése után a kiszolgáló frissíti a paraméterekhez kötött összes adatforrást. Az Adatforrás szerkesztése párbeszédpanelre visszatérve elvileg beállíthatja a frissített kiszolgáló és adatbázis hitelesítő adatait.
További lépések
Oldalakra osztott jelentések adatforrásai a Power BI jelentéskészítő kiszolgálón
További kérdései vannak? Kérdezze meg a Power BI közösségét