共用方式為


內嵌編頁報表

提示

請嘗試在 Power BI Embedded Analytics 遊樂場探索我們的 API 區段中,內嵌編頁報表或實驗我們的用戶端 API。

本文涵蓋在應用程式中內嵌編頁報表的步驟。 深入瞭解 什麼是Power BI Premium中的編頁報表?

如何內嵌編頁報表

當您在應用程式中內嵌 Power BI 內容時,您會定義內容,並在組態物件中指定其設定。 然後將該對象傳遞至 API。

當您內嵌編頁報表時,請使用類型為 IPaginatedReportLoadConfiguration的組態物件:

export interface IPaginatedReportLoadConfiguration {
    accessToken: string;
    id: string;
    embedUrl?: string;
    settings?: IPaginatedReportSettings;
    tokenType?: TokenType;
    type?: string;
    parameterValues?: IPaginatedReportParameter[];
}

此介面包含下列屬性:

  • accessToken - 可讓您存取所內嵌之 Power BI 數據的令牌。 若要深入瞭解存取令牌,請參閱 瞭解不同的內嵌解決方案

  • embedUrl - 您要內嵌之報表的 URL。 此 URL 會成為包含內嵌報表的 HTML iframe 元素來源。 具體而言,API 會將URL指派給iframe的 src 屬性。 您可以使用 報表 API 來取得此 URL。 兩個範例包括:

    我們建議使用下面所述的 parameterValues 屬性,將報表參數傳遞至報表。 不過,您也可以將查詢字串新增至內嵌 URL 的結尾,將參數傳遞至報表。 深入瞭解如何在編頁報表中傳遞 URL 參數,。 請參閱將參數傳遞至 URL的範例

  • 識別碼 - 您要內嵌的 Power BI 報表識別碼。

  • 主機名稱 - 預設 hostname 值為 app.powerbi.com。 如果您使用主權雲端,請在這裡提供URL。 如果您為 embedURL提供值,則會忽略 hostname

  • 設定 - IPaginatedReportSettings類型的組態物件。 這個物件會指定報表參數面板外觀的相關信息。 參數面板是動作列下方的列,可以展開或隱藏。

    顯示內嵌Power B I 編頁報表的螢幕快照。參數面板靠近頂端,並以紅色反白顯示。

    • 您可以按下動作列上的 [參數] 按鈕,以顯示或隱藏參數面板。 預設會提供該按鈕。 但是,如果您將面板的 屬性設定為 ,則無法使用 [參數] 按鈕

    • 根據預設,API 會折迭參數面板。 如果您將面板的 expanded 屬性設定為 true,則 API 會將此面板展開來載入報表。

    • 此程式代碼顯示設定 settings 屬性的其中一種方式:

      settings: {
          commands: {
              parameterPanel: {
                  enabled: true,
                  expanded: true
              }
          }
      }
      
  • tokenType - 可讓您存取所內嵌之 Power BI 數據的令牌類型。

    • 如果您要內嵌組織(使用者擁有數據),請使用 models.TokenType.Aad
    • 如果您要為客戶內嵌 models.TokenType.Embed (應用程式擁有資料)。

    如需詳細資訊,請參閱 瞭解不同的內嵌解決方案

  • parameterValues – 類型為 IPaginatedReportParameter的組態物件。 使用這個屬性設定報表參數。 這個方法使用 JavaScript SDK,是傳遞報表參數的慣用方法。 例如:

    parameterValues: [
          {name: "State", value: "WA"},
          {name: "City", value: "Seattle"},
          {name: "City", value: "Bellevue"},
          {name: "City", value: "Redmond"}
    ]
    

    這個方法只能用來傳遞 報表參數(具有 URL 前置詞 rp:的參數),而不是 rdl 參數(URL 前置詞 rdl:)。

下列範例示範如何內嵌編頁報表:

// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
    accessToken: anAccessToken,
    embedUrl: anEmbedUrl,
    uniqueId: aReportId,
    tokenType: aTokenType,
    type: 'report',
    datasetBindings: [{
      sourceDatasetId: "originalDatasetId",
      targetDatasetId: "notOriginalDatasetId"
    }]
};
 
// Get a reference to the HTML element that contains the embedded report.
let embedContainer = $('#embedContainer')[0];
 
// Embed the report.
let report = powerbi.embed(embedContainer, embedConfiguration);

請務必在 多資源內嵌令牌中包含用於系結的所有 DatasetId。

考慮和限制