Внедрение визуального элемента отчета
Кончик
Попробуйте внедрить визуальный элемент отчета или поэкспериментировать с нашими клиентскими API-интерфейсами в разделе игровой площадки Power BI Embedded Analytics.
В этой статье рассматриваются действия по внедрению визуального элемента в приложение. Дополнительные сведения о визуальных элементах визуальных элементах в Power BI.
Внедрение визуального элемента
При внедрении содержимого Power BI в приложение используется объект конфигурации для определения внедренного содержимого и указания параметров содержимого. Затем передайте этот объект в API.
При внедрении визуального элемента используйте объект конфигурации типа IVisualLoadConfiguration
:
interface IVisualLoadConfiguration {
accessToken?: string;
embedUrl?: string;
id?: string;
pageName: string;
tokenType?: models.TokenType;
type: string;
visualName: string;
}
Этот интерфейс включает следующие свойства:
accessToken
— маркер, предоставляющий доступ к внедренным данным Power BI. Дополнительные сведения о маркерах доступа см. в статье Общие сведения о различных решениях внедрения.embedUrl
— URL-адрес отчета, содержащий визуальный элемент, который вы внедряете. Этот URL-адрес становится источником элемента HTMLiframe
, содержащего внедренный визуальный элемент. В частности, API назначает URL-адрес атрибутуsrc
iframe
. Для получения этого URL-адреса можно использовать API отчетов. Ниже приведены два примера. - Отчеты — получение отчета в группе
- Отчеты — получение отчетов в группе
id
— идентификатор отчета Power BI, содержащего визуальный элемент, который вы внедряете.pageName
— имя страницы, содержащей визуальный элемент, который вы внедряете. Для получения страниц в отчете можно использовать метод getPages getPage s.tokenType
— тип маркера, который предоставляет доступ к внедренным данным Power BI.- Используйте
models.TokenType.Aad
, если вы внедряете данные в организацию (пользователь владеет данными). - Используйте
models.TokenType.Embed
, если вы внедряете данные для клиентов (приложение владеет данными).
Дополнительные сведения см. в статье Общие сведения о различных решениях внедрения.
- Используйте
type
— тип содержимого, которое вы внедряете. Используйте'visual'
для визуального элемента.visualName
— имя внедренного визуального элемента. Для получения визуальных элементов на странице можно использовать метод getVisualsgetVisuals.
Пример
В следующем примере показано, как внедрить один визуальный элемент:
// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
accessToken: anAccessToken,
embedUrl: anEmbedUrl,
id: aReportId,
pageName: aPageName,
tokenType: aTokenType,
type: 'visual',
visualName: aVisualName
};
// Get a reference to the HTML element that contains the embedded report.
let embedContainer = $('#embedContainer')[0];
// Embed the visual.
let visual = powerbi.embed(embedContainer, embedConfiguration);
Фильтры
По умолчанию API updateFilters
будет применять фильтры визуального уровня при внедрении одного визуального элемента отчета.
Это может привести к конфликту с фильтрами, примененными в объекте конфигурации внедрения, так как они применяются на уровне отчета.
Чтобы устранить эту проблему, можно задать уровень фильтров с помощью API:
await visual.updateFilters(FiltersOperations.Add, filters, FiltersLevel.Report);
Дополнительные сведения о фильтрах в фильтрах отчетов Control.