ページ分割されたレポートを埋め込む
先端
ページ分割されたレポートを埋め込むか、「Power BI Embedded Analytics Playground」の「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
属性に割り当てます。 Report API を使用して、この URL を取得できます。 2 つの例を次に示します。- レポート - グループ でレポートを取得する
- レポート - グループ でレポートを取得する
以下で説明する
parameterValues
プロパティを使用して、レポートパラメーターをレポートに渡すことをお勧めします。 ただし、埋め込み URL の末尾にクエリ文字列を追加することで、レポートにパラメーターを渡すこともできます。 ページ分割されたレポートで URL パラメーター渡す方法について詳しく説明します。 URL にパラメーターを渡すの例を参照してください。 ID - 埋め込む Power BI レポートの ID。
ホスト名 - 既定の
hostname
値は app.powerbi.comです。 ソブリン クラウドを使用している場合は、ここで URL を指定します。embedURL
の値を指定した場合、hostname
は無視されます。設定 - IPaginatedReportSettings型の構成オブジェクト。 このオブジェクトは、レポートのパラメーター パネルの外観に関する情報を指定します。 パラメーター パネルは、展開または非表示にできるアクション バーの下のバーです。 アクション バーの Parameters ボタンをクリックすると、パラメーター パネルの表示と非表示を切り替えることができます。 このボタンは既定で使用できます。 ただし、パネルの
enabled
プロパティをfalse
するように構成した場合は、[パラメーター] ボタンは使用できません。既定では、API はパラメーター パネルを折りたたみます。 パネルの
expanded
プロパティをtrue
に設定すると、このパネルが展開された状態でレポートが読み込まれます。このコードは、
settings
プロパティを構成する 1 つの方法を示しています。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 プレフィックス を持つパラメーター) を渡す場合にのみ使用でき、rdl パラメーター (URL プレフィックスが ) を することはできません。
例
次の例は、ページ分割されたレポートを埋め込む方法を示しています。
// 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 を、マルチリソース埋め込みトークンに含めるようにします。
考慮事項と制限事項
- 動的バインドを使用するには、「ページ分割されたレポートにデータセットを動的にバインドする」を参照してください。
- ページ分割されたレポートでは、ブートストラップされたメソッドはサポートされていません。
- ページ分割されたレポートを埋め込む場合、複数値パラメーター はサポートされません。
-
parameterValues
プロパティは、レポート パラメーターにのみ使用できます。 rdl パラメーターには使用できません。 - ページ分割されたレポートをリアルタイム データセット (プッシュ データセット) で埋め込む機能はサポートされていません。
関連コンテンツ
- レポート を埋め込む
- ページ分割されたレポートとは
- API を調べる