다음을 통해 공유


포함된 보고서 만들기, 편집 및 저장

Power BI 임베디드 분석을 사용하면 포함된 보고서를 만들고 편집하고 저장할 수 있습니다. 기존 데이터 세트를 기반으로 보고서를 만들거나 기존 보고서를 편집할 수 있습니다. 보고서를 만들거나 편집한 후에 저장할 수도 있습니다.

보고서를 만드는 방법

기존 데이터 집합에서 빈 새 보고서를 만드는 방법을 알아봅니다.

보고서를 만들기 위한 필수 액세스 토큰 권한

  • 고객 포함
  • 조직 대한 포함

데이터 세트에 대한 액세스 권한이 있는 포함 토큰을 생성합니다. 마스터 사용자 인증 방법을 사용하는 경우 애플리케이션에 Dataset.Read.All, Content.CreateWorkspaces.ReadWrite.all범위가 있는지 확인합니다. 자세한 내용은 포함 토큰 - 토큰 생성을 참조하세요.

보고서를 만들기 위한 필수 클라이언트 쪽 권한

보고서를 만드는 데 필요한 클라이언트 쪽 권한은 다음과 같습니다.

  • 만들기 - 사용자가 새 보고서를 만들 수 있습니다.

  • 모든 - 사용자는 보고서의 복사본을 만들고, 보고, 편집하고, 저장하고, 저장할 수 있습니다.

새 보고서 만들기

기존 데이터 세트에서 빈 새 보고서를 만듭니다. 데이터 세트 ID와 포함 URL이 필요합니다. 예를 들어 getDatasetsInGroup REST API를 사용하고 CreateReportEmbedURL검색할 수 있습니다. 자세한 내용은 데이터 세트 - 그룹 데이터 세트 가져오기를 참조하세요.

메모

새 보고서를 만들려면 데이터 세트에 대한 빌드 또는 쓰기 권한이 있어야 합니다.

let embedCreateConfiguration = {
    tokenType: tokenType,
    accessToken: accessToken,
    embedUrl: embedURL,
    datasetId: datasetId,
    settings: settings,
    theme: theme, // optional
};

// Grab the reference to the div HTML element that will host the report
let embedContainer = $('#embedContainer')[0];

// Create report
let report = powerbi.createReport(embedContainer, embedCreateConfiguration);

테마가 적용된 보고서를 만드는 옵션도 있습니다. 보고서에 추가된 새 시각적 개체는 테마 스타일을 적용합니다. 자세한 내용은 보고서 테마 적용을 참조하세요.

보고서를 편집하는 방법

기존 보고서를 편집하고 보기 모드와 편집 모드 간에 전환하는 방법을 알아봅니다.

편집에 필요한 액세스 토큰 권한

  • 고객 포함
  • 조직 대한 포함

보고서에 대한 액세스 권한이 있는 포함 토큰을 생성합니다. 마스터 사용자 인증 방법을 사용하는 경우 애플리케이션에 Dataset.ReadWrite.AllReport.ReadWrite.All범위가 있는지 확인합니다. 또한 최종 사용자가 편집해야 하는 각 보고서에 대한 allowEdit: true 플래그를 설정해야 합니다. 자세한 내용은 포함 토큰 - 토큰 생성을 참조하세요.

편집에 필요한 클라이언트 쪽 권한

보고서를 편집하려면 다음 클라이언트 쪽 권한이 필요합니다.

  • 복사 - 사용자는 다른 이름으로 저장사용하여 보고서의 복사본을 저장할 수 있습니다.

  • ReadWrite - 사용자가 보고서를 보고 편집하고 저장할 수 있습니다.

  • 모든 - 사용자는 보고서의 복사본을 만들고, 보고, 편집하고, 저장하고, 저장할 수 있습니다.

보고서 편집

편집 모드에서 기존 보고서를 로드합니다. 보고서는 애플리케이션이 일반 보고서를 포함하는 것과 동일한 방식으로 포함되어야 하며 보기 모드는 편집 모드여야 합니다. viewMode 매개 변수를 models.ViewMode.Edit설정하고 올바른 클라이언트 권한이 있는지 확인합니다.

let config = {
    type: 'report',
    tokenType: models.TokenType.Aad or models.TokenType.Embed,
    accessToken: YourAccessToken,
    embedUrl: YourEmbedUrl,
    id: YourEmbedReportId,
    permissions: models.Permissions.All,
    viewMode: models.ViewMode.Edit,
};

// Grab the reference to the div HTML element that will host the report
let embedContainer = $('#embedContainer')[0];

// Embed report
let report = powerbi.embed(embedContainer, config);

이제 사용자가 사용하도록 설정된 권한 따라 보고서를 편집할 수 있습니다.

보고서가 로드된 후 편집 모드와 보기 모드 간에 전환할 수도 있습니다.

report.switchMode("view");

편집 모드로 전환하려면 다음을 수행합니다.

report.switchMode("edit");

보고서를 저장하는 방법

보고서 복사본을 저장하고 보고서를 다른 작업 영역에 저장하는 등의 추가 옵션을 포함하여 보고서를 저장하는 방법을 알아봅니다.

저장에 필요한 액세스 토큰 권한

  • 고객 포함
  • 조직 대한 포함

보고서 및 데이터 세트에 대한 액세스 권한이 있는 포함 토큰을 생성합니다. 보고서를 다른 작업 영역에 저장하려면 토큰에 대상 작업 영역에 대한 액세스 권한이 있어야 합니다. 마스터 사용자 인증 방법을 사용하는 경우 애플리케이션에 Report.ReadWrite.AllWorkspaces.ReadWrite.all범위가 있는지 확인합니다. 또한 고객이 편집해야 하는 각 보고서에 대한 allowEdit: true 플래그를 설정해야 합니다. 자세한 내용은 포함 토큰 - 토큰 생성을 참조하세요.

저장에 필요한 클라이언트 쪽 권한

보고서를 저장하는 데 필요한 클라이언트 쪽 권한은 다음과 같습니다.

  • ReadWrite - 사용자가 보고서를 보고 편집하고 저장할 수 있습니다.

  • 만들기 - 사용자가 새 보고서를 만들 수 있습니다.

  • 복사 - 사용자는 다른 이름으로 저장사용하여 보고서의 복사본을 저장할 수 있습니다.

  • 모든 - 사용자는 보고서의 복사본을 만들고, 보고, 편집하고, 저장하고, 저장할 수 있습니다.

보고서 저장

보고서를 만들 때 파일 메뉴 또는 JavaScript에서 save 작업을 호출할 때까지 보고서가 저장되지 않습니다.

report.save();

보고서 복사본 저장

다른 이름으로 추가 복사본을 저장합니다. 보고서의 복사본은 보고서의 데이터 세트와 동일한 작업 영역에 저장됩니다.

let saveAsParameters = {
    name: "newReport"
};

report.saveAs(saveAsParameters);

보고서를 다른 작업 영역에 저장할 수도 있습니다. 대상 작업 영역에 대한 올바른 권한이 있는지 확인합니다.

let saveAsParameters = {
    name: "newReport"
    targetWorkspaceId: "13bbf317-fe2b-4b15-a081-94b0921c28e5"
};

report.saveAs(saveAsParameters);

보고서가 저장되었는지 확인

report.isSaved 호출하여 보고서가 저장되었는지 확인합니다. 이 메서드는 저장되지 않은 변경 내용이 손실되는 것을 방지하는 데 도움이 될 수 있습니다.

let isReportSaved = await report.isSaved();

사용자 지정 saveAs 환경 만들기

구성 개체에 useCustomSaveAsDialog: true 보고서 설정을 추가하여 사용자 지정 saveAs 대화 상자를 만들 수 있습니다. 이 설정은 기본 UI 대화 상자를 숨깁니다.

이벤트는 사용자가 UI에서 다른 이름으로 저장 클릭하면 발생합니다. 이 정보를 사용하여 사용자 지정 대화 상자를 표시합니다.

report.on("saveAsTriggered", function (event) {
    console.log(event);
});

다른 이름으로 저장 작업을 수행하려면 사용자 지정 대화 상자에서 report.saveAs 호출할 수 있습니다. 자세한 내용은 보고서 복사본 저장을 참조하세요.

let saveAsParameters = {
    name: "newReport"
    targetWorkspaceId: "13bbf317-fe2b-4b15-a081-94b0921c28e5"
};

report.saveAs(saveAsParameters);

save 및 saveAs 이벤트 수신 대기

saved 이벤트는 저장이 UI의 save 또는 saveAs 작업 또는 API를 사용하여 트리거될 때 발생합니다. 자세한 내용은 이벤트 처리하는 방법을 참조하세요.

report.on("saved", function (event) {
    console.log(event);
});