Внедрение отчета в Power BI Embedded

Совет

Попробуйте внедрить отчет или поэкспериментировать с нашими клиентскими API в разделе "Обзор наших API" на тестовой площадке Power BI Embedded Analytics.

В этой статье рассматриваются действия по внедрению отчета Power BI в приложение. Узнайте больше о отчетах в отчетах в Power BI.

Внедрение отчета

При внедрении содержимого Power BI в приложение используется объект конфигурации для определения внедренного содержимого и указания параметров содержимого. Затем вы передаете этот объект в API. Дополнительные сведения см. в разделе "Настройка параметров отчета ".

Внедрение существующего отчета

При внедрении отчета, который уже существует, используйте объект конфигурации типа IReportLoadConfiguration.

interface IReportLoadConfiguration {
    accessToken: string;
    bookmark?: models.IApplyBookmarkRequest;
    contrastMode?: models.ContrastMode;
    datasetBinding?: models.IDatasetBinding;
    embedUrl?: string;
    filters?: models.ReportLevelFilters[];
    id: string;
    pageName?: string;
    permissions?: models.Permissions;
    settings?: models.IEmbedSettings;
    slicers?: models.ISlicer[];
    theme?: models.IReportTheme;
    tokenType?: models.TokenType;
    type: string;
    viewMode?: models.ViewMode;
}

Этот интерфейс включает следующие свойства:

  • accessToken — маркер, предоставляющий доступ к внедренным данным Power BI. Дополнительные сведения о маркерах доступа см. в статье " Общие сведения о различных решениях внедрения ".

  • datasetBinding — Набор данных, определяющий схему данных, которую использует внедренный отчет. Дополнительные сведения о наборах данных см. в статье "Динамическое связывание наборов данных" в отчете .

  • embedUrl — URL-адрес внедренного отчета. Этот URL-адрес становится источником HTML-элемента iframe , содержащего внедренный отчет. В частности, API назначает URL-адрес src атрибуту iframe. Для получения этого URL-адреса можно использовать API отчетов . Ниже приведены два примера:

  • id — идентификатор внедренного отчета Power BI.

  • permissions — Операции, предоставляемые пользователям для внедренного отчета. Доступны следующие значения:

    • Read — Пользователи могут просматривать отчет.
    • ReadWrite — Пользователи могут просматривать, редактировать и сохранять отчет.
    • Copy — Пользователи могут сохранить копию отчета с помощью команды "Сохранить как".
    • Create — Пользователи могут создавать новый отчет.
    • All — Пользователи могут создавать, просматривать, изменять, сохранять и сохранять копию отчета.
  • tokenType — Тип токена, который предоставляет доступ к внедренным данным Power BI.

    • Используйте models.TokenType.Aad , если вы внедряете данные в организацию (пользователь владеет данными).
    • Используйте models.TokenType.Embed , если вы внедряете данные для клиентов (приложение владеет данными).

    Дополнительные сведения см. в разделе "Общие сведения о различных решениях внедрения ".

  • type — Тип содержимого, которое вы внедряете. Используется 'report' для отчета Power BI.

Интерфейс IReportLoadConfiguration также содержит другие свойства. Сведения об этих свойствах см. в разделе "Настройка параметров отчета ".

  • bookmark
  • contrastMode
  • filters
  • pageName
  • settings
  • slicers
  • theme
  • viewMode

Внедрение нового отчета

При внедрении нового отчета, создаваемого из набора данных, используйте объект конфигурации типа IReportCreateConfiguration.

interface IReportCreateConfiguration {
    accessToken: string;
    datasetId: string;
    embedUrl?: string;
    settings?: models.IEmbedSettings;
    theme?: IReportTheme;
    tokenType?: models.TokenType;
    type: string;
}

Свойства в этом интерфейсе похожи на свойства в IReportLoadConfiguration интерфейсе со следующими исключениями:

Сведения о редактировании и создании отчетов см. в статье "Создание, изменение и сохранение внедренного отчета ".

Пример

В следующем примере показано, как внедрить отчет:

// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
    accessToken: anAccessToken,
    embedUrl: anEmbedUrl,
    id: aReportId,
    permissions: somePermissions,
    tokenType: aTokenType,
    type: 'report'
};
 
// 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);

Дальнейшие действия