Share via


단계별 포함 사용

Power BI 임베디드 분석 powerbi.loadreport.render API는 개발자에게 보고서 포함 단계에 대한 유연성을 높여 최종 사용자 환경을 개선할 수 있습니다.

일반적으로 를 사용하여 powerbi.embed포함된 보고서를 로드합니다.

let report = powerbi.embed(embedContainer, embedConfig);

포함된 보고서는 사용자 인터페이스에서 로드 및 렌더링됩니다. 그런 다음 최종 사용자는 렌더링된 보고서와의 상호 작용을 확인합니다. 예를 들어 슬라이서 상태를 적용하는 경우 최종 사용자는 보고서가 렌더링된 후 슬라이서가 적용되는 것을 볼 수 있습니다.

최종 사용자 powerbi.load 로부터 이러한 상호 작용을 숨기려면 및 report.render API는 포함 프로세스를 단계로 구분합니다. 함수는 powerbi.load 최종 사용자가 결과를 보기 전에 항목과 상호 작용할 수 있도록 보고서를 로드합니다. 그런 다음 함수는 report.render 보고서를 표시합니다.

로드

함수는 powerbi.load 보고서를 로드하지만 렌더링하지 않으므로 최종 사용자가 결과를 보기 전에 상호 작용이 발생할 수 있습니다. 예를 들어 와 함께 report.getPages를 사용한 powerbi.load 다음 최종 사용자를 표시할 페이지를 지정할 수 있습니다. 또는 를 사용한 page.getVisuals다음 표시하거나 숨길 시각적 개체를 결정할 수 있습니다.

와 마찬가지로 powerbi.embed함수에는 powerbi.load HTML 요소와 IEmbedConfiguration 개체가 필요합니다.

부하가 완료되면 이벤트가 발생합니다 loaded .

let config = {
    ...
};

// Get a reference to the embedded report HTML element.
let embedContainer = $('#embedContainer')[0];

// Load the report in the container.
let report = powerbi.load(embedContainer, config);

report.on('loaded', function() {
    ...
});

렌더링

를 사용하는 powerbi.load경우 코드를 실행한 report.render 후 이벤트 처리기 함수에서 loaded 함수를 호출해야 합니다. 를 사용하여 report.render 보고서 렌더링을 계속하고 포함된 보고서를 표시합니다.

rendered 보고서가 렌더링을 완료하면 이벤트가 발생합니다.

report.on('loaded', function() {
    report.render();
});

report.on('rendered', () => {
    ...
});

이벤트 처리에 대한 자세한 내용은 이벤트 처리 방법을 참조하세요.

예제

다음 코드 예제에서는 보고서를 로드하고 필터를 설정한 다음 필터링된 보고서를 렌더링합니다.

// Build the config object.
let config = {
    type: 'report',
    tokenType: TokenType.Embed,
    accessToken: ...,
    embedUrl: ...,
    id: ...,
    ...
};
 
// Get a reference to the embedded report HTML element.
let embedContainer = $('#embedContainer')[0];

// Load the report in the container.
let report = powerbi.load(embedContainer, config);

...
report.on('loaded', async () => {
    await report.setFilters(filters);
    report.render();
});

제한 사항

위상 포함은 보고서 렌더링 속도를 늦출 수 있으므로 필요할 때만 올바르게 사용해야 합니다.

보고서를 로드한 후 를 호출하기 전에 다음 API를 호출 report.render할 수 있습니다.

방법 작업
BookmarksManager.getBookmarks, BookmarksManager.apply 책갈피를 가져와 적용합니다. 책갈피 캡처는 지원되지 않습니다.
Report.updateSettings 보고서 설정을 업데이트합니다.
Report.applyTheme 보고서 테마를 적용합니다.
Report.getFilters, Report.setFilters, Report.removeFilters 보고서 필터를 가져오기, 설정 및 제거합니다.
Report.getPages 보고서 페이지를 가져옵니다.
Page.setActive 활성 보고서 페이지를 설정합니다.
Page.getFilters, Page.setFilters, Page.removeFilters 페이지 필터를 가져오기, 설정 및 제거합니다.
Page.getVisuals 페이지 시각적 개체를 가져옵니다.
Visual.getFilters, Visual.setFilters, Visual.removeFilters 시각적 필터를 가져오기, 설정 및 제거합니다.
Visual.getSlicerState, Visual.setSlicerState 시각적 슬라이서 상태를 가져와 설정합니다.

다음 단계