Внедрение отчета на страницу

Совет

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

В этой статье рассматриваются шаги по внедрению отчета с разбивкой на страницы в приложение. Дополнительные сведения об отчетах с разбивкой на страницы см. в статье Что такое отчеты с разбивкой на страницы в 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-адрес атрибуту src iframe. Для получения этого URL-адреса можно использовать API отчетов . Ниже приведены два примера:

    Рекомендуется передавать параметры отчета в отчет с помощью свойства, описанного parameterValues ниже. Однако можно также передать параметры в отчет, добавив строку запроса в конец URL-адреса внедрения. Дополнительные сведения о передаче параметров URL-адреса в отчетах с разбивкой на страницы. См. примеры передачи параметров в URL-адрес.

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

  • hostname — значение по умолчанию hostname— app.powerbi.com. Если вы используете национальное облако, укажите URL-адрес здесь. Если вы указали значение для embedURL, hostname будет игнорироваться.

  • settings — объект конфигурации типа IPaginatedReportSettings. Этот объект задает сведения о внешнем виде панели параметров отчета. Панель параметров — это панель под панелью действий, которую можно развернуть или скрыть.

    Снимок экрана: внедренный отчет Power BI с разбивкой на страницы. Панель параметров находится в верхней части и выделена красным цветом.

    • Панель параметров можно отобразить или скрыть, нажав кнопку Параметры на панели действий. Эта кнопка доступна по умолчанию. Но если для свойства falseпанели задано enabled значение , кнопка Параметры недоступна.

    • По умолчанию API сворачивает панель параметров. Если для свойства панели задано expanded значение true, API загружает отчет с развернутой панелью.

    • В этом коде показан один из способов settings настройки свойства:

      settings: {
          commands: {
              parameterPanel: {
                  enabled: true,
                  expanded: true
              }
          }
      }
      
  • tokenType — тип маркера, который предоставляет доступ к внедренным данным Power BI.

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

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

  • parameterValues — объект конфигурации типа IPaginatedReportParameter. Задайте параметры отчета с помощью этого свойства. Этот метод использует пакет SDK для JavaScript и является предпочтительным методом передачи параметров отчета. Пример:

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

    Этот метод можно использовать только для передачи параметров отчета (параметров с префиксом rp:URL-адреса), а не параметров RDL (с префиксом 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.
  • Внедрение отчета с разбивкой на страницы с набором данных в режиме реального времени (набором данных для отправки) не поддерживается.

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