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


Переход от аналитики к быстрой демонстрации действий

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

В этом примере показано, как приложение использует следующие команды:

  • Команда расширения меню API для добавления настраиваемой команды и элемента меню в отчет.
  • обработку событий для обмена данными между событиями отчета и кодом приложения.
  • API exportData для экспорта базовых данных визуального элемента отчета.

Переход от аналитики к быстрому демонстрации действий

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

В отчете есть визуализации таблиц, графов столбцов и кольцевой диаграммы, а также несколько механизмов срезов, фильтрации и сортировки. В этом отчете Компания Contoso наиболее заинтересована в последних 30-конечных покупках в размере $500-$799, поэтому отчет загружается с этими диапазонами срезов, примененных.

снимок экрана с демонстрацией аналитических сведений о действиях.

Создание аналитических сведений

Чтобы получить аналитические сведения о результатах продаж, пользователи отчетов могут отфильтровать или срезать данные дальше, выбрав определенные значения и диапазоны в раскрывающихся списках, визуализациях и срезах. Например, менеджер по продажам для профессиональных услуг выбирает несколько разных регионов и понимает, что, хотя профессиональные услуги категории были самыми высокими общими затратами, у него были самые низкие расходы в регионах MEA, Великобритании и Соединенных Штатов, и нет покупок в LATAM или Канаде.

снимок экрана, показывающий регион США, выбранный на диаграмме кольцевой диаграммы, которая выделяет данные о затратах США по сравнению с общим объемом расходов по графику линейчатой строки последней покупки.

Создание кампании

Менеджер по продажам решает продвигать продажи профессиональных услуг в Канаду, LATAM, MEA, Великобританию и США клиентов. Чтобы начать кампанию в любой момент с помощью текущего списка клиентов, диспетчер продаж может выбрать кнопку Создать кампанию или выбрать Запустить кампанию в дополнительных параметров (...) меню.

снимок экрана: кнопка

снимок экрана: параметр

Создание целевого списка клиентов

Пользователи отчетов могут использовать раскрывающийся список отчетов, визуализации и срезы, чтобы сузить список клиентов до целевых получателей. В этом случае менеджер по продажам выбирает Канаде, LATAM, MEA, Великобританиии США из раскрывающегося списка регионе, а таблица клиентов теперь выводит список клиентов только из этих регионов. Когда список клиентов будет готов, диспетчер продаж выбирает создать кампанию.

снимок экрана: раскрывающийся список

Создание кампании с скидкой

Откроется список рассылки кампании, перечисление имен целевых получателей и контактных данных, а также предложение отправить скидку или отправить купон. Диспетчер продаж выбирает отправить скидку.

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

В диалоговом окне Отправить скидку в список рассылки диспетчер продаж записывает сообщение, предлагающее целевым клиентам 10% скидку на профессиональные услуги Contoso, а затем выбирает Отправить.

снимок экрана: текстовое поле сообщения и кнопка

Приложение отправляет сообщения электронной почты предложения скидки в список рассылки и отображает уведомление отправленных.

Менеджер по продажам также может отправить купон клиентам, выбрав Отправить купон на экране списка рассылки.

Переход от аналитики к быстрому действию демонстрации кода

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

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

  • отчет о коде JavaScript внедряет отчет и определяет все взаимодействия визуализации, экспорт данных и функции обработки кнопки.

Добавление команды кампании в отчет

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

let config = {
...
    settings: {
        ...
        extensions: [
            {
                command: {
                    name: "campaign",
                    title: "Start campaign",
                    icon: base64Icon,
                    selector: {
                        $schema: "http://powerbi.com/product/schema#visualSelector",
                        visualName: tableVisualGuid
                    },
                    extend: {
                        visualOptionsMenu: {
                            title: "Start campaign",
                            menuLocation: models.MenuLocation.Top,
                        }
                    }
                }
            },
        ...
    }
}

Обработка команды "Запуск кампании"

Следующий код обрабатывает событие commandTriggered для команды campaign. Код прослушивает событие выбора элемента меню кампании "Пуск" и отправляет текущие отфильтрованные данные списка клиентов из визуального элемента таблицы.

// Adding onClick listener for the custom menu in the table visual in the report
reportShowcaseState.report.on("commandTriggered", async function (event) {
    if (event.detail.command === "campaign") {

        // Populate data according to the current filters on the table visual
        const result = await tableVisual.exportData(models.ExportDataType.Underlying);
        handleExportData(result);
        onStartCampaignClicked();
    }
});

Обработка кнопки "Создать кампанию"

Следующий код обрабатывает событие нажатия кнопки кампании . Код прослушивает событие выбора кампании кнопки и отправляет текущие отфильтрованные данные списка клиентов из визуального элемента таблицы.

// Adding onClick listener for the button in the report
reportShowcaseState.report.on("buttonClicked", async function () {

    // Populate data according to the current filters on the table visual
    const result = await tableVisual.exportData(models.ExportDataType.Underlying);
    handleExportData(result);
    onStartCampaignClicked();
});