我是PowerBI的新手,我需要使用由不同链接源创建的同一报表,这些源具有相同的表结构。
我使用Other-Web作为数据源,并使用这样的链接
http://db.other.com.br/nahar/infinity/rest/entitygrupo
数据库是无穷大,而我还有很多其他的东西:
http://db.other.com.br/nahar/rachu/rest/entitygrupo
检索到的数据完全相同。
由于我有许多数据库,因此我想找到一种方法以某种方式保持报告的完整性,而无需创建一个报告来更改源。如果我可以使用相同的已发布链接并传递一些可更改正在使用的链接的参数,那将是完美的。
答案 0 :(得分:4)
Parameters and templates正是为该用例服务的。
假设我们有以下数据源用于演示:
https://jsonplaceholder.typicode.com/posts/1
https://jsonplaceholder.typicode.com/posts/2
1
和2
等同于数据源中的数据库名称(infinity
和rachu
)。
查询将类似于:
let
Source = Json.Document(Web.Contents("https://jsonplaceholder.typicode.com/posts/1")),
#"Converted to Table" = Record.ToTable(Source)
in
#"Converted to Table"
现在我们可以为database_name
创建一个新参数:
然后我们可以转到Advanced Editor
修改查询并参数化数据源:
let
Source = Json.Document(Web.Contents("https://jsonplaceholder.typicode.com/posts/" & database_name)),
#"Converted to Table" = Record.ToTable(Source)
in
#"Converted to Table"
您会发现目前没有任何变化。
创建一个简单的表以显示数据(id 1):
然后我们可以将报告导出为Power BI模板:
如果打开模板文件,将要求您输入参数值。让我们尝试2
的{{1}},然后点击加载:
您将看到该报告已加载了来自数据库2(id 2)的数据,并且其报告布局与第一个数据库相同: