Записки охотника

Корпоративные поздравления

Собственные разработки
Рвав-рвав, собака Смайл спешит поделиться новостью!

Представляем вашему вниманию свою 3-ю разработку комплекта отчетности «Офисная жизнь» — отчет «Корпоративные поздравления», иллюстрирующий праздничные события, происходящие в компании.

Описание решения

Отчет реализован при помощи DAX и Power Query. А также в него встроен производственный календарь. При этом, используемый производственный календарь взят не из собственной разработки (см. отчет «Производственный календарь»), а с сайта компании «КонсультантПлюс».
Рвав-рвав, с парсингом производственного календаря помог один замечательный человек Михаил Музыкин, но разрезы, необходимые для построения указанного отчета – это творчество вашего покорного слуги.
Помимо распределения нерабочих дней согласно указанному производственному календарю, отчет содержит следующие расчеты, которые можно получить по каждому сотруднику:
  • Размер подарочного фонда, формируемого исходя из должности «виновника торжества» (нормы сбора денежных средств задаются в отдельном справочнике).
  • Количество коллег, изъявивших желание принять участие в формировании подарочного фонда.
  • Количество «виновников торжества» за представленный период времени (в представленном решении используется текущий месяц).
Корпоративные поздравления: представление данных
Отчет содержит 3 листа:
  • Лист «Навигатор» — титульный лист отчета, содержащий навигационное меню, маркетинговую информацию, и контакты для связи с разработчиком решения.
  • Лист «Корпоративные поздравления» — собственно, сам отчет, содержащий сводные и детальные данные по сотрудникам.
  • Лист «Информация» — памятка пользователя.
Основные элементы:
  • «Таблица» со встроенными эмодзи-маркерами.
  • «Карточка» нового образца.
  • «Диаграмма дерева».
  • «Многострочная карточка».
  • «Срез» в виде простого списка.
Дополнительные элементы:
  • Навигатор.
  • Скрывающаяся панель фильтров.
  • Кнопка.
  • Иконка.
  • Изображение.
  • Текстовое поле.
  • Эмодзи.

Процесс разработки

  • Для указания базового промежутка времени на уровне Power Query были созданы параметры «Начало периода» и «Конец периода» — это даты начала и окончания периода, которые выведены в название отчета.
  • Создана таблица «Календарь» — базовая таблица, определяющая набор дат для расчета, а также классификацию дней, участвующих в выборке данных.
  • Создана таблица «Меры» — техническая таблица, созданная для удобства.
  • Создана таблица «Параметры» — содержит параметры отчета, о которых говорил в самом начале (отсекаем нужный отрезок времени, но обычно это текущий календарный год).
  • Создана таблица «Даты рождения» — содержит набор исходных данных, который имеет минимально необходимую структуру, а именно: сотрудника, дату его рождения, позицию в компании и гендерную принадлежность.
Рвав-рвав, для тех, кто не знает, это мальчики или девочки (тут прям нежное «Рвав-рвав-рвав»).
  • На основании этих данных на уровне Power Query был рассчитан фактический и наступающий возраст сотрудников компании.
  • Создана таблица «Сотрудники» — справочник сотрудников.
  • Создана таблица «Позиции» — справочник позиции сотрудника в компании, содержащий его функциональная роль, а также норму сбора в подарочный фонд.
Рвав-рвав, на этом работы с Power Query завершены.
  • Дальше необходимо создать нужные связи в получившейся модели данных — это один из важнейших этапов любой разработки в Power BI:
Корпоративные поздравления: модель данных
  • Затем при, помощи DAX, можно начинать формировать нужные аналитические разрезы и дополнительные маркеры в таблице «Даты рождения»: например, вывести признак того, совпадает праздник с юбилеем, или нет.
  • Далее, при помощи мер, рассчитывается количество участников поздравления, а также ориентировочный подарочный фонд. Конечно, это можно было сделать параметрами, но, поскольку данное значение не меняется часто, при разработке была использована постоянная сумма сбора: 1 000 ₽ на сотрудника, 1 500 ₽ на руководителя, и 2 000 на ТОП-менеджера.
  • Как уже упоминалось выше, при визуализации данных в качестве маркеров определенных событий используются эмодзи.
  • При помощи стандартной панели фильтров производится фильтрация данных отчета за текущий месяц.
  • Последний шаг— это дизайн, тут мы придерживаемся единого стиля.

Особенности и ключевые преимущества

  • Поскольку при формировании производственного календаря используется парсинг сайта известной компании, вам не нужно заботиться о корректности получения базовых данных. Единственное, что нужно сделать, периодически переставлять параметры отчета на соответствующий год.
  • Отчет имеет встроенную систему маркеров, в том числе, и по гендерному признаку. Маркер «Цветы» был сделан для забывчивых мальчиков, если именинник— девочка, однако по запросу можно дополнить данный механизм.
Рвав-рвав, собака Смайл— толерантный, современный пес!
  • Как уже упоминалось выше, нормы сборов для подарочного фонда, зашитые в справочник, тоже можно изменить.
Рвав-рвав, товарищи, данная разработка— просто мечта, она реально необходима в каждый офис!
На этом все.
Засим— прощаюсь, пойду играть с маленькой хозяйкой, приобрел себе новую игрушку, но, видимо, не совсем себе, а на двоих…

Ваш Смайл