Поделиться через


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

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

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

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

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

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

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

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

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

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

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

Создайте новый пустой отчет из существующего набора данных. Вам потребуется идентификатор набора данных и URL-адрес внедрения. Например, можно использовать REST API getDatasetsInGroup и получить 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);

Вы также можете создать отчет с темой, примененной к ней. Новые визуальные элементы, добавленные в отчет, будут уважать стиль темы. Дополнительные сведения см. в применении тем отчета.

Изменение отчета

Узнайте, как редактировать существующий отчет и переключаться между режимами просмотра и редактирования.

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

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

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

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

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

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

  • копирование. Пользователи могут сохранить копию отчета с помощью сохранить как.

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

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

При создании отчета отчет не сохраняется, пока не вызовете операцию 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);
});