소개

완료됨

JavaScript 또는 TypeScript를 사용하여 Microsoft Power BI 클라이언트 API를 통해 Power BI 콘텐츠를 포함할 수 있습니다. 전체 포함 환경을 프로그래밍 방식으로 제어하는 클라이언트 라이브러리입니다.

참고

Power BI 클라이언트 API의 기본 사항과 이러한 항목을 Power BI 콘텐츠를 포함하는 데 사용하는 방법을 알아보려면 Power BI 콘텐츠 포함 모듈을 참조하세요.

Power BI 콘텐츠를 포함하는 것 외에도 클라이언트 API를 통해 앱에서 다음을 수행할 수 있습니다.

  • 보고서 필터 추가와 같은 작업을 콘텐츠에 적용합니다.
  • 앱이 단추 선택과 같이 보고서에서 수행된 사용자 작업에 응답할 수 있도록 이벤트를 사용합니다.
  • 책갈피를 적용하거나 새 책갈피를 만들어 책갈피와 상호 작용합니다.
  • 사용자가 보고서 환경을 사용자 지정할 수 있도록 컨트롤을 제공하는 동적 보고서 레이아웃을 생성합니다.
  • 맞춤형 보고서 시각적 개체를 만듭니다.
  • 상황에 맞는 분석 워크플로를 진행합니다.

작업 적용

앱은 포함된 콘텐츠에 많은 작업을 적용할 수 있습니다. 이러한 작업에는 보고서 다시 로드 또는 새로 고침과 같은 일반적인 작업이 포함됩니다. 또한 전체 화면 모드를 시작 또는 종료하거나, 콘텐츠를 처음 포함할 때 앱이 구성 개체에 적용한 설정을 다시 적용하는 기능도 여기에 포함됩니다.

일반 작업 외에 페이지 탐색 작업도 사용할 수 있습니다. 또한 필터 및 슬라이서 작업에 액세스할 수 있으므로 앱이 필터/슬라이서 상태를 확인하거나 설정하도록 할 수 있습니다. 다른 유용한 작업에는 시각적 데이터를 내보낼 수 있는 데이터 작업과 새 사용자 지정 명령으로 메뉴를 확장하는 메뉴 작업이 있습니다.

Power BI 임베디드 분석 플레이그라운드로 이동하고 다음 지침을 통해 이러한 작업 중 일부를 진행할 수 있습니다.

참고

Power BI 임베디드 분석 플레이그라운드에서는 Power BI 임베디드 분석을 배우고 살펴보고 실험할 볼 수 있는 웹 사이트입니다. 샘플 Power BI 콘텐츠 또는 사용자 고유의 콘텐츠와 함께 클라이언트 API를 사용하는 실습 환경을 위한 개발자 샌드박스가 포함되어 있습니다. 코드 조각 및 쇼케이스도 살펴볼 수 있습니다.

자세한 내용은 Power BI 임베디드 분석 플레이그라운드란?을 참조하세요.

왼쪽 창에서 개발자 샌드박스를 선택합니다.

왼쪽 창에 개발자 샌드박스 옵션이 강조 표시된 이미지

메시지가 표시되면 샘플 사용 단추를 선택하여 먼저 샘플 보고서를 사용합니다.

샘플 보고서 사용 대화 상자에 샘플 사용 단추가 강조 표시된 이미지

Power BI 서비스에서 소싱된 자체 보고서를 선택하거나 개발 앱에서 생성된 embed 토큰을 사용할 수도 있습니다. 이 활동에서는 샘플 보고서를 계속 사용합니다.

플레이그라운드에는 샘플 보고서가 포함되어 있고 위의 보고서는 보고서를 포함, 로드 및 렌더링하는 데 필요한 코드가 포함된 코드 창입니다.

포함된 보고서 API 창에서 일반 작업 그룹을 확장합니다.

포함된 보고서 API 창에서 확장된 일반 작업 그룹을 보여 주는 이미지

코드를 업데이트하려면 포함된 보고서 API 창에서 전체 화면 작업을 끌어 코드 창의 마지막 줄(줄 94)에 놓습니다.

코드 창에서 작업을 놓을 위치를 나타내는 화살표가 있는 전체 화면 작업을 보여 주는 이미지

코드 창에 추가된 코드 조각을 검토합니다. 그런 다음, 코드를 실행하려면 코드 창 위에 있는 메뉴 모음에서 실행을 선택합니다.

실행 메뉴 옵션이 강조 표시된 메뉴 모음을 보여 주는 이미지

보고서가 전체 화면 모드로 렌더링됩니다. 전체 화면 모드를 종료하려면 Esc 키를 누릅니다.

이제 프로그래밍 방식으로 보고서의 날짜 슬라이서를 수정하겠습니다. 포함된 보고서 API 창에서 필터 및 슬라이서 그룹을 확장합니다.

포함된 보고서 API 창에서 확장된 필터 및 슬라이서 그룹을 보여 주는 이미지

슬라이서 상태 설정 작업을 코드 창으로 끌어서 코드의 마지막 줄 아래에 놓습니다. 그런 다음, 코드 창에 추가한 43개의 코드 줄을 검토합니다. 코드를 실행합니다. 보고서가 계속 전체 화면 모드로 열립니다. 날짜 슬라이서 날짜 범위는 2014년 10월 12일~2014년 11월 27일로 설정해야 합니다.

날짜 슬라이서와 새 날짜 범위를 보여 주는 이미지

전체 화면 모드를 종료하려면 Esc 키를 누릅니다.

플레이그라운드는 앱을 개발할 필요 없이 작업을 검색하고 평가할 수 있는 간편한 방법을 제공합니다. 샘플 보고서 또는 고유한 보고서를 사용하여 이러한 작업을 살펴볼 수 있습니다.

구독 가능한 이벤트 작업

이벤트는 포함된 Power BI 콘텐츠와 앱 간에 통신합니다. 앱은 자동화된 작업(예: 보고서 렌더링) 또는 사용자 작업(예: 단추 선택)에 대한 응답으로 이벤트를 발생시킬 수 있습니다.

즉, 보고서가 로드 또는 렌더링될 때 앱이 의미 있는 방식으로 응답할 수도 있습니다(각각 loaded 이벤트 또는 rendered 이벤트 발생). 자세한 내용은 단계별 포함 사용을 참조하세요.

사용자가 포함된 Power BI 보고서와 상호 작용할 때 앱이 응답할 수 있습니다. 다음 사용자 작업은 앱이 구독할 수 있는 이벤트를 발생시킵니다.

  • 보고서 단추를 선택(buttonClicked 이벤트)
  • 앱이 상황에 맞는 메뉴에 추가하는 사용자 지정 명령인 명령 확장을 선택(commandTriggered 이벤트)
  • 하이퍼링크를 선택(dataHyperlinkClicked 이벤트)
  • 세로 막대형 차트 시각적 개체의 열과 같은 데이터 포인트를 선택(dataSelected 이벤트)
  • 보고서 시각적 개체를 선택(visualClicked 이벤트)
  • 보고서 페이지를 변경(pageChanged 이벤트)

앱을 향상시킬 수 있는 가능성을 고려합니다. Tailspin Toys에서 판매 앱은 관심 있는 고객 메모를 앱 데이터베이스에 다시 쓸 수 있습니다. 사용자가 보고서 단추를 선택하면 앱에서 메모를 입력하도록 요구하는 대화 상자 창이 열립니다. 앱은 입력한 데이터를 유지하며 보고서를 새로 고쳐 보고서 시각적 개체에 표시되는 새 데이터를 표시합니다.

이 모듈의 이후 단원에서는 앱이 다양한 이벤트에 응답하는 방법을 보여 줍니다.

또한 대시보드, 대시보드 타일, Q&A 환경, 모바일 보기에 포함된 보고서에 대해 다른 이벤트를 사용할 수 있습니다. 자세한 내용은 이벤트를 처리하는 방법을 참조하세요.

책갈피와 상호 작용

책갈피를 사용하면 필터 및 보고서 요소의 표시 상태를 포함하여 Power BI 보고서 페이지의 상태를 캡처할 수 있습니다. 책갈피를 적용하면 캡처된 상태가 보고서 페이지로 복원됩니다. 슬라이드 쇼와 같은 일련의 책갈피를 재생할 수 있으며, 대상 사용자에게 제공할 때 유용한 스토리텔링 디바이스가 될 수 있습니다.

앱에서 프로그래밍 방식으로 다음과 같이 책갈피 환경을 제어할 수 있습니다.

  • 책갈피를 적용, 캡처 또는 재생하여 관리합니다.
  • 책갈피를 적용하거나 현재 보기 세션으로 돌아갑니다.
  • 책갈피 슬라이드 쇼 모드를 시작하거나 종료합니다.
  • 책갈피 창을 표시하거나 숨깁니다.
  • 책갈피 목록을 검색합니다.
  • 책갈피 및 해당 속성에 액세스하여 드롭다운 목록에 표시할 수 있습니다.

다음 이미지는 Power BI 임베디드 분석 플레이그라운드에서 탐색할 수 있는 책갈피 작업을 보여 줍니다.

플레이그라운드에서 사용할 수 있고 이전에 나열된 환경과 일치하는 책갈피 작업을 보여 주는 이미지

Tailspin Toys에서 판매 앱을 사용하면 포함된 보고서 페이지의 현재 상태를 개인 책갈피로 캡처할 수 있습니다. 개인 책갈피는 책갈피를 만든 사용자에게만 표시되며 사용자가 특정 관심 보기로 돌아갈 수 있습니다. 앱은 앱 데이터베이스에 개인 책갈피 메타데이터를 유지하며, 사용자가 다시 적용할 수 있도록 개인 책갈피의 드롭다운 목록을 표시합니다.

이 모듈의 이후 단원에서는 앱에서 책갈피를 사용하는 방법을 보여 줍니다.

자세한 내용은 책갈피를 사용하여 사용자 환경 향상을 참조하세요.

동적 보고서 레이아웃 생성

레이아웃 API를 사용하여 사용자가 보려는 시각적 개체와 레이아웃을 선택할 수 있습니다.

다음 이미지는 Power BI 임베디드 분석 플레이그라운드에서 탐색할 수 있는 레이아웃 작업을 보여 줍니다.

사용자 지정 레이아웃 적용, 레이아웃 확인, 모든 시각적 머리글 숨기기, 모든 시각적 머리글 표시, 단일 시각적 머리글 숨기기 등 레이아웃 작업을 보여 주는 이미지

Tailspin Toys에서 판매 앱을 사용하면 페이지 크기, 캔버스 크기 및 페이지 레이아웃을 정의할 수 있습니다. 앱 사용자는 페이지 레이아웃 내에서 각 시각적 개체에 대한 시각적 개체 레이아웃을 지정할 수 있습니다. 또한 관심 있는 시각적 개체를 표시하거나 크기를 조정하고 다른 시각적 개체를 숨길 수 있습니다.

이 모듈의 이후 단원에서는 앱이 보고서 레이아웃을 개인 설정할 수 있는 방법을 보여 줍니다.

자세한 내용은 보고서 레이아웃 개인 설정을 참조하세요.

맞춤형 보고서 시각적 개체 만들기

Power BI 클라이언트 API에는 powerbi-report-authoring 패키지가 포함됩니다. 이 패키지는 프로그래밍 방식으로 시각적 개체를 만들고 개인 설정하고, 시각적 개체가 로드된 후 Power BI 보고서를 작성하기 위한 powerbi-client 라이브러리의 확장입니다. 또한 앱에서 포함된 Power BI 보고서를 편집할 수 있습니다.

addPage 함수를 사용하여 작성 페이지를 추가하고, createVisual 함수를 사용하여 기본 레이아웃이 있는 새 시각적 개체를 작성 페이지에 추가합니다.

다음 이미지는 Power BI 임베디드 분석 플레이그라운드에서 탐색할 수 있는 작성 작업을 보여 줍니다.

작성 페이지 만들기, 시각적 개체 만들기 등 작성 작업을 보여 주는 이미지

Tailspin Toys에서 판매 앱은 사용자가 새 시각적 개체를 설정 및 개인 설정할 수 있는 단계별 환경을 제공합니다.

이 모듈의 이후 단원에서는 앱에서 사용자가 맞춤형 시각적 개체를 만들 수 있도록 허용하는 방법을 보여 줍니다.

자세한 내용은 보고서 작성 개요를 참조하세요.

상황에 맞는 분석 워크플로 진행

앱은 div 요소에 Power BI 콘텐츠를 포함하고 iframe 내에 콘텐츠를 호스팅합니다. iframe 요소는 앱과 포함된 콘텐츠 간에 분리를 만들어 데이터가 더 안전하게 유지되도록 합니다. 클라이언트 API는 항상 앱과 포함된 콘텐츠 간에 통신합니다. 통신은 양방향이므로 앱은 상황에 맞는 분석 워크플로를 진행할 수 있습니다.

  1. 사용자가 앱 내에서 이동합니다.
  2. 앱은 특정 보기로 필터링된 Power BI 보고서를 표시합니다.
  3. 사용자는 보고서의 데이터를 대화형으로 필터링합니다.
  4. 사용자가 단추를 선택하여 작업을 수행합니다.
  5. 앱은 일부 코드를 실행하여 응답합니다.

이전 단계에 설명된 대로 상황에 맞는 분석 워크플로를 보여 주는 이미지