Создание, изменение и сохранение внедренного отчета

Аналитика Power BI Embedded позволяет создавать, редактировать и сохранять внедренные отчеты. Отчет можно создать на основе существующего набора данных или изменить существующий отчет. Вы также можете сохранить отчет после его создания или изменения.

Создание отчета

Узнайте, как создать новый пустой отчет из существующего набора данных.

Необходимые разрешения маркера доступа для создания отчета

Создайте маркер внедрения с доступом к набору данных. Если вы используете метод проверки подлинности главного пользователя, убедитесь, что приложение имеет следующие области: Dataset.Read.Allи Content.CreateWorkspaces.ReadWrite.all. Дополнительные сведения см. в разделе "Токен внедрения— создание маркера ".

Необходимые разрешения на стороне клиента для создания отчета

Для создания отчета требуются следующие разрешения на стороне клиента:

  • Create — пользователи могут создавать новый отчет.

  • Все — пользователи могут создавать, просматривать, изменять, сохранять и сохранять копию отчета.

Создание нового отчета

Создайте новый пустой отчет из существующего набора данных. Вам потребуется идентификатор набора данных и 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.All и Report.ReadWrite.All. Необходимо также задать allowEdit: true флаг для каждого отчета, который должен изменить конечный пользователь. Дополнительные сведения см. в разделе "Токен внедрения— создание маркера ".

Необходимые разрешения на стороне клиента для редактирования

Для редактирования отчета требуются следующие разрешения на стороне клиента:

  • Копирование — пользователи могут сохранить копию отчета с помощью команды "Сохранить как".

  • ReadWrite — пользователи могут просматривать, редактировать и сохранять отчет.

  • Все — пользователи могут создавать, просматривать, изменять, сохранять и сохранять копию отчета.

Редактирование отчета

Загрузите существующий отчет в режиме редактирования. Отчет должен быть внедрен так же, как приложение внедряет обычный отчет, и режим просмотра должен находиться в режиме правки. Убедитесь, что для параметра models.ViewMode.Editзадано viewMode значение и у вас есть правильные разрешения клиента.

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.Allи Workspaces.ReadWrite.all. Необходимо также задать allowEdit: true флаг для каждого отчета, который клиент должен изменить. Дополнительные сведения см. в разделе "Токен внедрения— создание маркера ".

Необходимые разрешения на стороне клиента для сохранения

Для сохранения отчета требуются следующие разрешения на стороне клиента:

  • ReadWrite — пользователи могут просматривать, редактировать и сохранять отчет.

  • Create — пользователи могут создавать новый отчет.

  • Копирование — пользователи могут сохранить копию отчета с помощью команды "Сохранить как".

  • Все — пользователи могут создавать, просматривать, изменять, сохранять и сохранять копию отчета.

Сохранение отчета

При создании отчета отчет не сохраняется, пока не вызовете save операцию из меню файла или JavaScript.

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 параметр отчета в объект конфигурации. Этот параметр скрывает диалоговое окно пользовательского интерфейса по умолчанию.

Событие saveAsTriggered возникает, когда пользователь нажимает кнопку "Сохранить как " в пользовательском интерфейсе. Используйте эти сведения для отображения настраиваемого диалогового окна.

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

Чтобы сохранить как операцию, можно вызвать report.saveAs из настраиваемого диалогового окна. Дополнительные сведения см. в разделе "Сохранение копии отчета ".

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

report.saveAs(saveAsParameters);

Прослушивание событий сохранения и сохранения

Событие saved возникает, когда сохранение активируется save в пользовательском интерфейсе или saveAs действием или с помощью API. Дополнительные сведения см. в разделе "Обработка событий ".

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

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