Создание отчета Power BI для анализа проектов
Примечание
Эта статья является частью серии руководств по использованию Power Apps, Power Automate и Power BI с SharePoint Online. Обязательно просмотрите вводные сведения, чтобы получить общее представление о процессе и скачать связанные файлы.
В этой задаче мы создадим отчет Power BI на основе двух списков. Мы загрузим данные списков в Power BI Desktop, немного их очистим, выполним основное моделирование и создадим набор визуальных элементов, которые содержат сведения о данных.
Краткий обзор Power BI Desktop
Прежде чем мы углубимся в создание отчета, давайте рассмотрим Power BI Desktop. Это мощный инструмент с множеством функций, поэтому мы рассмотрим только те области, которые будут использоваться в этой задаче. В Power BI Desktop есть три основных рабочих области или представления: Отчет, Данные и Связи. Power BI Desktop также включает Редактор запросов, который открывается в отдельном окне.
На следующем экране показаны значки трех представлений в левой части Power BI Desktop: Отчет, Данные и Связи (сверху вниз). Желтая полоска слева обозначает текущее представление. В нашем примере отображается представление Отчет. Чтобы изменить представление, щелкните любой значок.
Представление Отчет имеет пять основных областей:
- Лента, на которой отображаются стандартные задачи, связанна с отчетами и визуализациями.
- Представление Отчет или холст. Здесь создаются и организовываются визуализации.
- Область вкладки Страницы в нижней части. Здесь можно выбрать или добавить страницу отчета.
- Панель Визуализации. Здесь можно изменять визуализации, настраивать цвета или оси, применять фильтры, перетаскивать поля и выполнять другие задачи.
- Панель Поля. Здесь можно перетаскивать элементы и фильтры в представление Отчет или область Фильтры на панели Визуализации.
Представление Данные содержит три основные области.
- Лента, на которой выбрана вкладка Моделирование (см. рис. ниже). На этой вкладке можно создавать вычисляемые таблицы и столбцы, а также вносить другие изменения в модель данных.
- Центральная панель, на которой представлены данные для выбранной таблицы.
- Область Поля, где можно изменять способ отображения полей в отчетах.
В этой задаче не будет использоваться представление Отношения, но вы можете ознакомиться с ним позже, после загрузки данных списков в Power BI Desktop.
В редакторе запросов можно создавать запросы и преобразовывать данные, а затем загружать обработанную модель данных в Power BI Desktop. Редактор запросов содержит четыре основные области.
- Лента, на которой доступно множество параметров для формирования и преобразования загруженных данных.
- Левая панель с отображаемыми запросами, которые можно выбирать, просматривать и формировать.
- Центральная панель с отображаемыми данными выбранного запроса, которые можно формировать.
- Окно Параметры запроса, в котором отображаются свойства запроса и примененные шаги по преобразованию данных.
Шаг 1. Перенос данных в Power BI Desktop
На этом этапе мы сначала подключимся к двум спискам. Затем мы очистим данные, удалив столбцы, которые не нужны для анализа данных. Также мы изменим типы данных в некоторых из оставшихся столбцов, чтобы вычисления работали правильно. См. дополнительные сведения о получении и очистке данных в Power BI Desktop в разделе Получение данных нашего курса управляемого обучения.
Подключение к спискам
В Power BI Desktop на вкладке Главная щелкните или нажмите Получить данные, затем — Дополнительно...
В диалоговом окне Получение данных щелкните или нажмите Список SharePoint Online, затем — Подключить.
Введите URL-адрес сайта SharePoint и нажмите кнопку ОК.
Если появится следующее диалоговое окно, войдите в систему, используя соответствующие учетные данные, а затем нажмите кнопку Подключить.
Выберите списки Сведения о проекте и Запросы проекта, затем нажмите кнопку Изменить.
Теперь списки отображаются в виде таблиц в редакторе запросов.
Удаление ненужных столбцов из таблиц
На панели навигации слева выберите Сведения о проекте.
На центральной панели выберите столбец FileSystemObjectType, а затем щелкните Удалить столбцы.
Удалите два столбца после столбца Id: ServerRedirectedEmbedURL и ContentTypeId.
Совет
Выберите оба столбца с нажатой клавишей SHIFT, а затем нажмите Удалить столбцы.
Удалите все столбцы справа от столбца PMAssigned (всего 22 столбца). Таблица должна выглядеть приблизительно так:
Повторите процесс, который вы только что выполнили, но теперь для запросов проекта. Удалите FileSystemObjectType, ServerRedirectedEmbedURL, ContentTypeId и все столбцы справа от столбца Approved (всего 22 столбца). Таблица должна выглядеть приблизительно так:
Изменение типа данных в столбцах таблицы Project Details
Выберите столбец ProjectedDays и щелкните Тип данных: любой. Затем выберите параметр Целое число.
Повторите предыдущий шаг для столбца ActualDays.
Выберите столбец ApprovedDate и щелкните Тип данных: любой. Затем выберите параметр Дата.
Повторите предыдущий шаг для столбцов ProjectedStartDate и ProjectedEndDate.
Изменение типа данных в столбцах таблицы Project Requests
Выберите столбец EstimatedDays и щелкните Тип данных: любой. Затем выберите параметр Целое число.
Выберите столбец RequestDate и щелкните Тип данных: любой. Затем выберите параметр Дата.
Применение и сохранение изменений
На вкладке Главная нажмите кнопку Закрыть и применить, чтобы закрыть редактор запросов и вернуться в главное окно Power BI Desktop.
Выберите Файл, затем— Сохранить и сохраните файл под именем project-analysis.pbix.
Шаг 2. Улучшение модели данных
Теперь, когда мы загрузили данные из списков Power BI Desktop, перейдем к моделированию данных. Моделирование данных может занять много времени, но мы вкратце рассмотрим некоторые действия, которые помогут вам эффективно использовать данные списка в Power BI Desktop.
- Изменение способа связи между двумя таблицами.
- Добавление таблицы дат для выполнения вычислений на основе рабочих дней.
- Добавление вычисляемых столбцов для вычисления интервалов между этапами проекта.
- Добавление мер для вычисления расхождения между предполагаемыми и фактическими днями проекта.
Выполнив эти шаги, мы сможем создавать представления, в которых будут использоваться усовершенствования нашей модели. См. дополнительные сведения о моделировании данных в Power BI Desktop в разделе Моделирование в нашем курсе управляемого обучения.
Изменение связи между таблицами
Когда в приложение Power BI Desktop загружаются списки, оно создает связи между ними на основе столбца Id в обеих таблицах. На самом деле должны быть связаны столбец Id в таблице Project Requests и столбец RequestId в таблице Project Details. Исправим это.
Щелкните значок Представление "Данные".
На вкладке Моделирование щелкните или нажмите Управление связями. Эту вкладку представления Данные мы будем использовать на всех этапах моделирования данных.
Выберите существующую связь, нажмите кнопку Удалить, затем еще раз нажмите Удалить для подтверждения.
Нажмите кнопку Создать, чтобы создать другую связь.
В диалоговом окне Создание связи сделайте следующее.
Для первой таблицы выберите Project Requests и столбец Id.
Для второй таблицы выберите Project Details и столбец RequestId.
Экран должен выглядеть приблизительно так: Когда все будет готово, нажмите ОК, затем выберите Закрыть.
Добавление таблицы дат для упрощения вычислений на основе даты
Нажмите кнопку Создать таблицу.
Введите следующую формулу в строке формул: Dates = CALENDARAUTO().
Эта формула создает таблицу с именем Dates (Даты) и одним столбцом дат. Таблица содержит все даты из других таблиц и обновляется автоматически при добавлении новых дат (т. е. при обновлении данных).
Эта формула и другие формулы в этой статье используют выражения анализа данных (DAX), язык формул для Power BI и других технологий. Дополнительные сведения см. в разделе Основы DAX в Power BI Desktop.
Нажмите клавишу ВВОД, чтобы создать таблицу Dates.
Добавление вычисляемого столбца в таблицу "Dates"
Оставаясь в таблице "Dates", нажмите кнопку Создать столбец.
Введите следующую формулу в строке формул: IsWeekDay = SWITCH(WEEKDAY(Dates[Date]), 1,0,7,0,1).
Эта формула определяет, является ли дата в столбце Date рабочим днем. Если дата является рабочим днем, столбец IsWeekDay возвращает значение 1. В противном случае он возвращает значение 0.
Нажмите клавишу ВВОД, чтобы добавить столбец IsWeekDay в таблицу Dates.
Добавление вычисляемого столбца в таблицу Project Details.
На панели справа выберите таблицу Project Details, а затем нажмите кнопку Создать столбец.
Введите эту формулу в строке формул:
ApprovedStartDiff = CALCULATE(SUM(Dates[IsWeekday]), DATESBETWEEN(Dates[Date], 'Project Details'[ApprovedDate], 'Project Details'[ProjectedStartDate] ) )
Эта формула вычисляет разницу в днях между датой утверждения проекта и датой его запланированного начала. Формула использует столбец IsWeekday из таблицы Dates, поэтому она считает только рабочие дни.
Нажмите клавишу ВВОД, чтобы добавить столбец ApprovedStartDiff в таблицу Project Details.
Добавление вычисляемого столбца в таблицу Project Requests
На панели справа выберите таблицу Project Requests, а затем нажмите кнопку Создать столбец.
Введите эту формулу в строке формул:
RequestDateAge = CALCULATE(SUM(Dates[IsWeekday]), DATESBETWEEN(Dates[Date], 'Project Requests'[RequestDate], NOW() ) )
Эта формула вычисляет разницу в днях между датой запроса на проект и сегодняшней датой (NOW()). Эта формула также подсчитывает только рабочие дни недели. Этот столбец используется для поиска проекта, который дольше всего находится в состоянии ожидания.
Нажмите клавишу ВВОД, чтобы добавить столбец RequestDateAge в таблицу Project Requests.
Добавление меры в таблицу сведений о проекте
На панели справа выберите таблицу Project Details, а затем нажмите кнопку Создать меру.
Введите эту формулу в строке формул:
VarProjectedActual = DIVIDE( SUM('Project Details'[ActualDays]) - SUM('Project Details'[ProjectedDays]), SUM('Project Details'[ProjectedDays]) )
Эта формула вычисляет разницу между фактическим и прогнозируемым числом дней для проекта. Мы добавляем ее как меру, а не вычисляемый столбец, поэтому она возвращает правильные результаты, независимо от того, как данные фильтруются или объединяются в отчете.
Нажмите клавишу ВВОД, чтобы добавить меру VarProjectedActual в таблицу Project Details.
Добавление меры в таблицу запросов на проект
На панели справа выберите таблицу Project Requests, а затем нажмите кнопку Создать меру.
Введите эту формулу в строке формул:
MaxDaysPending = MAXX( FILTER('Project Requests', 'Project Requests'[Approved]="Pending"), 'Project Requests'[RequestDateAge] )
Эта формула находит проект, который дольше всего находится в состоянии ожидания, на основе вычисляемого столбца, определенного ранее.
Нажмите клавишу ВВОД, чтобы добавить столбец MaxDaysPending в таблицу Project Requests.
Шаг 3. Создание визуализаций отчета
Теперь мы переходим к этапу, который у большинства пользователей ассоциируется с анализом данных: создание визуализаций, позволяющих находить шаблоны в наших данных. На этом этапе мы создадим четыре представления.
- Гистограмма, показывающая предполагаемое и фактическое число дней проектов.
- Гистограмма, показывающая расхождение для каждого проекта.
- Карточка, показывающая проект, который дольше всего находится в состоянии ожидания.
- Таблица, показывающая время между датой утверждения проекта и предполагаемой датой начала.
Создав эти представления отчета в Power BI Desktop, мы опубликуем данные и отчеты в службе Power BI. Так мы сможем создавать панели мониторинга и предоставлять к ним общий доступ. См. дополнительные сведения о моделировании данных в Power BI Desktop см. в разделе Визуализации в рамках нашего курса управляемого обучения.
Создание линейчатой диаграммы для отображения прогнозируемых и фактических сведений
Выберите значок представления Отчет. Мы будем использовать это представление для выполнения всех остальных задач в Power BI Desktop.
На панели Визуализации справа щелкните значок Кластеризованная гистограмма.
Перетащите столбцы PMAssigned и Title из таблицы Project Details на панели Поля в таблицу Axis (Оси) на панели Визуализации.
Перетащите столбцы ActualDays и ProjectedDays из таблицы Project Details на панели Поля в таблицу Value (Значение) на панели Визуализации.
Визуализация должна выглядеть приблизительно так:
Перетащите столбец Status из таблицы Project Details на панели Поля в область Фильтры на панели Визуализации. Затем установите флажок Завершено.
Теперь диаграмма фильтруется для отображения только завершенных проектов, так как мы сравниваем прогнозируемые дни с фактическими днями.
Щелкните стрелки в верхнем левом углу для перемещения вверх и вниз по иерархии руководителей проектов и проектов. На следующем рисунке показана детализация проектов.
Создание линейчатой диаграммы для отображения расхождения с прогнозируемыми сведениями
Щелкните или нажмите на холсте за пределами визуализации, которую вы только что создали.
На панели Визуализации справа щелкните значок Кластеризованная гистограмма.
Перетащите столбцы PMAssigned и Title из таблицы Project Details на панели Поля в таблицу Axis (Оси) на панели Визуализации.
Перетащите столбцы VarProjectedActual из таблицы Project Details на панели Поля в таблицу Value на панели Визуализации.
Перетащите столбец Status из таблицы Project Details на панели Поля в область Фильтры на панели Визуализации. Затем установите флажок Завершено.
Визуализация должна выглядеть приблизительно так:
На этой диаграмме вы можете видеть расхождения между проектами, которые выполняли Сергей Иванов и Иван Сергеев. Выполните детализацию, чтобы просмотреть расхождение по проектам и узнать, было ли предполагаемое число дней меньше или больше их фактического числа.
Прежде создавать дополнительные визуализации, переместите и измените размер уже созданных визуализаций, чтобы новые визуализации поместились рядом.
Создание карточки, на которой отображается проект, находящийся в состоянии ожидания дольше всего
Щелкните или нажмите на холсте за пределами визуализации, которую вы только что создали.
На панели Визуализации справа щелкните значок Карточка.
Перетащите столбец MaxDaysPending из таблицы Project Requests на панели Поля в таблицу Fields (Поля) в области Визуализации.
Выберите значок Формат (малярный валик), затем установите для параметра Граница значение Вкл.
Установите для параметра Заголовок значение Вкл., затем добавьте имя "Max days pending approval" (Максимальное число дней в ожидании утверждения).
Визуализация должна выглядеть приблизительно так:
После публикации отчета мы будем использовать этот элемент, чтобы активировать оповещение, когда максимальное значение для проекта достигает определенного порога.
Создание таблицы, показывающей время между датой утверждения проекта и предполагаемой датой начала
Щелкните или нажмите на холсте за пределами визуализации, которую вы только что создали.
На панели Визуализации справа щелкните значок Таблица.
Перетащите столбцы PMAssigned, Title и ApprovedStartDiff из таблицы Project Details на панели Поля в таблицу Values (Значения) на панели Визуализации.
Перетащите столбец ProjectedStartDate из таблицы Project Details на панели Поля в область Фильтры панели Визуализации. Затем выберите все даты, кроме (Пусто).
Измените размер столбцов таблицы так, чтобы все данные были хороши видны, и настройте сортировку по убыванию по столбцу ApprovedStartDiff. Визуализация должна выглядеть приблизительно так:
В области Значения нажмите стрелку вниз возле столбца ApprovedStartDiff и выберите вариант Среднее. Теперь вы увидите средний период между датами утверждения проекта и прогнозируемого начала работ.
Снова нажмите стрелку вниз возле столбца ApprovedStartDiff, выберите Условное форматирование, а затем выберите Цветовые шкалы для фона.
Задайте цвета для полей Минимум и Максимум, как показано ниже, затем нажмите ОК.
Визуализация должна выглядеть приблизительно так:
Как видите, проекты Сергея Иванова начинаются намного позже после утверждения. Кроме назначенного руководителя, есть также другие факторы, но с этим фактором также стоит ознакомиться.
Мы подошли к концу раздела отчета. Теперь вы получите полный отчет на основе данных, импортированных из SharePoint, а затем очищенных и смоделированных в Power BI Desktop. Если все сделано правильно, отчет должен выглядеть приблизительно так:
Дальнейшие действия
Следующий шаг в этой серии руководств — публикация отчета проекта Power BI и создание панели мониторинга.
См. также
Примечание
Каковы ваши предпочтения в отношении языка документации? Пройдите краткий опрос (обратите внимание, что этот опрос представлен на английском языке).
Опрос займет около семи минут. Личные данные не собираются (заявление о конфиденциальности).
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по