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


Демонстрация представлений отчетов

Закладки отчетов Power BI записывать текущее состояние внедренной страницы отчета, включая состояние его визуальных элементов и любые срезы или фильтрацию. Пользователи могут вернуть отчет в это состояние, доступ к захваченной или общей закладке. Api клиента Power BI можно использовать для сохранения закладок представлений с отчетами, а также для того, чтобы пользователи отчетов могли записывать и делиться своими закладками.

Представления отчетов отслеживания демонстрации в игровой площадке Power BI embedded analytics используют API закладок для доступа пользователей, записи, сохранения и общего доступа к закладкам.

Пользователи могут:

  • Просмотр закладок, сохраненных в отчете.
  • Используйте фильтры, срезы и другие элементы управления для создания настраиваемого представления отчета.
  • Зафиксировать текущее представление, сохранив закладку.
  • Поделитесь захваченным представлением с другими пользователями, отправив им ссылку.
  • Вернитесь к закладным представлениям, созданным во время текущего сеанса просмотра.

Демонстрация представления отчетов

В представлении отчетов отслеживания демонстрация, воображаемый конгломерат с именем Contoso отображает данные о производительности в внедренном отчете Power BI. В отчете используется&Q, две многороувные карточки, матрица и диаграммы столбцов для отображения данных 2014 для всех их производителей, продуктов и регионов. Визуальные элементы имеют элементы управления фильтрами и срезами, чтобы пользователи могли сузить и просмотреть части данных.

Настройка представления

Менеджер по продажам в регионе "Запад" выбирает "Западная", чтобы просмотреть только данные региона "Запад", а ползунок даты используется для сужения интервала времени до второй половины года.

снимок экрана, показывающий визуализации и элементы управления в демонстрации представлений отчетов записи.

Диспетчер продаж может сохранить или поделиться настроенным представлением, выбрав представление записи. Всплывающее диалоговое окно позволяет сохранить "Мои представления" или ссылки копирования.

снимок экрана: диалоговое окно

Сохранение закладки

Чтобы сохранить закладку, диспетчер продаж выбирает Сохранить в"Мои представления", введите имя представления и выбирает Сохранить.

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

снимок экрана: список закладок с выбранным выбранным представлением.

Общий доступ к закладке

Чтобы получить ссылку на представление для отправки заинтересованным лицам, диспетчер продаж выбирает ссылку копирования в диалоговом окне представления записи , а затем выбирает Копировать, чтобы скопировать ссылку. Выбор символа закрытия или выбора в любом месте за пределами диалогового окна закрывает его.

снимок экрана: диалоговое окно

Просмотр закладок

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

Закладки, сохраненные при создании отчета, доступны для всех пользователей во всех сеансах. Вы также можете сохранять созданные пользователем закладки между сеансами, но в этой демонстрации закладки, создаваемые пользователями, доступны только во время одного сеанса просмотра или по прямому URL-адресу.

Получатели ссылок на общие закладки могут использовать ссылки в браузерах для открытия отчетов непосредственно в закладках.

Запись демонстрации кода представления отчета

Код реализации демонстрации находится в репозитории PowerBI-Embedded-Showcases GitHub.

  • Приложение HTML-код создает контейнер и элементы отчета, сохраненные представления кнопку и раскрывающийся список, а также кнопку представления записи и диалоговое окно.

  • отчет JavaScript внедряет отчет с сохраненным списком закладок, загружает отчет с первым, весь год 2014 активное представление закладок и реализует функции записи закладок, сохранения, общего доступа и выбора.

В классе отчета BookmarksManager применяет ранее сохраненную закладку по имени, записывает и возвращает строку, представляющую текущее состояние отчета, и применяет ранее захваченное состояние. При применении сохраненной закладки можно указать закладку, name или state.

Дополнительные сведения об операциях закладки и API см. в закладках отчетов.

Применение закладочного представления к загрузке отчета

Код демонстрации декодирует имя закладки из URL-адреса представления id аргумента и получает закладку из локального хранилища. В демонстрации используется локальное хранилище для простоты, но вы можете использовать любую базу данных. Атрибут bookmark в отчете embedConfiguration применяет закладку при загрузке.

async function embedSharedBookmarkReport() {
    ...
    // Get the bookmark name from url param
    let bookmarkName = getBookmarkNameFromURL();

    // Get the bookmark state from local storage
    let bookmarkState = localStorage.getItem(bookmarkName);

    // Embed configuration used to describe the what and how to embed
    let config = {
        ...
        // Adding bookmark attribute will apply the bookmark on load
        bookmark: {
            state: bookmarkState
        }
    };

Захват представления и сохранение его в списке закладок

Код демонстрации фиксирует текущее состояние отчета, добавляет новое имя закладки в список закладок и открывает раскрывающийся список закладок с активной новой закладкой.

        // Capture the report's current state with personalized visuals
        const capturedBookmark = await bookmarkShowcaseState.report.bookmarksManager.capture({ personalizeVisuals: true });

        // Build bookmark element
        let bookmark = {
            name: "bookmark_" + bookmarkShowcaseState.bookmarkCounter,
            displayName: capturedViewname,
            state: capturedBookmark.state
        }

        // Add the new bookmark to the HTML list
        bookmarksList.append(buildBookmarkElement(bookmark));

        // Open the bookmarks list div and show the applied bookmark
        bookmarksList.addClass("show position");

        bookmarksDropdown.addClass(displayClass);
        ...

        // Set the captured bookmark as active
        const newBookmark = "bookmark_" + bookmarkShowcaseState.bookmarkCounter;
        setBookmarkActive($(newBookmark));

Отображение выбранного представления из списка закладок

Этот код задает выбранную закладку как активную, выделяет ее в списке закладок и применяет активное состояние.

function onBookmarkClicked(element) {

    // Set the clicked bookmark as active
    setBookmarkActive($(element));

    // Apply respective color to the label of the bookmark
    applyColor(element.id);

    // Get bookmark ID from HTML
    const bookmarkId = $(element).attr("id");

    // Find the bookmark in the bookmarks array
    let currentBookmark = getBookmarkByID(bookmarkId);

    // Apply the bookmark state
    bookmarkShowcaseState.report.bookmarksManager.applyState(currentBookmark.state);
}