任何人都可以将Microsoft Power BI集成到Delphi应用程序中。我相信我将需要将网页嵌入到表单中,我对此表示满意,但是我看不到如何强制刷新或向Power BI提供运行时选择标准。
它将链接到标准SQL Server数据库(当前不基于云)。我有要在Power BI桌面上使用的图形。
答案 0 :(得分:0)
我正在将其集成到WPF C# application中。它与Delphi中的代码几乎相同,但是由于ADAL库可用于C#而变得更容易。
如果要基于应用程序中的当前选择显示报告(或图块或仪表板),则必须将此信息提供给报告。您可以将选择内容保存到数据库中的表中(或有关选择内容的信息,例如主键值),并在此表上生成报告。将会话列放入其中,并在每次保存时生成唯一的会话ID值。然后过滤报告以仅显示会话数据。
要filter嵌入的报表,请定义一个过滤器,并将其分配给您要传递给embed configuration的JavaScript Power BI Client对象的filters
属性,或调用{ {1}}方法。就您而言,report.setFilters
就足够了。 Construct像这样:
IBasicFilter
用您要可视化的唯一会话ID值替换const basicFilter: pbi.models.IBasicFilter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
table: "ReportTempTableName",
column: "SessionId"
},
operator: "In",
values: [12345],
filterType: 1 // pbi.models.FilterType.BasicFilter
}
。
为避免用户删除应用的过滤器并查看所有会话的数据的可能性,您可以隐藏过滤器窗格:
12345