如何为每个页面应用单独的过滤器

How to apply separate filters for every page

我是 powerbi 嵌入的新手,我想为我报告中的每个页面应用单独的过滤器

例如我想要一些专门针对此页面的过滤器 我的报告有三页 我可以应用过滤器,但它反映到所有页面

您可以使用 Page 级过滤器,它会为您指定的报告页面添加过滤器。

请遵循以下代码片段:

为每个页面创建单独的 filter 对象,如下所示:


const filter1 = {
    $schema: "http://powerbi.com/product/schema#basic",
    target: {
        table: "table_name",
        column: "column_name"
    },
    operator: "operator",
    values: ["values"]
};

检索报告的 page 集合:

const pages = await report.getPages();

使用页面索引获取特定页面并使用 updateFilters() 添加/更新/删除 filters:

await pages[1].updateFilters(models.FiltersOperations.Add, [filter1]);

同样,您可以为每个报告页面执行以下操作:

请参考:

  1. https://docs.microsoft.com/javascript/api/overview/powerbi/get-visuals#how-to-get-a-list-of-pages
  2. https://docs.microsoft.com/javascript/api/overview/powerbi/control-report-filters