Внешний отчет для анализа продаж по дням недели в 1С:Розница
Анализ динамики розничных продаж помогает владельцу торговой точки планировать закупки, графики работы сотрудников и маркетинговые акции. Одним из наиболее информативных разрезов считается распределение выручки по дням недели: именно оно показывает пики нагрузки и затишья, которые не видны в ежемесячных сводках. В типовых конфигурациях 1С:Розница уже накоплены все необходимые регистры, поэтому задача сводится к разработке удобного пользовательского инструмента.
Внешний отчет — это обработка, которая хранится отдельно от основной конфигурации и подключается через стандартный механизм дополнительных отчетов. Такой подход сохраняет конфигурацию типовой и позволяет быстро обновлять релиз, а сам файл обработки легко переносить между базами. Ниже описан практический путь создания подобного отчета с использованием схемы компоновки данных и языка запросов.
Источники данных в конфигурации 1С:Розница
Основным источником информации служит регистр накопления «Продажи», в который записываются данные при проведении документов реализации, чеков ККМ и возвратов. Регистр хранит сумму, количество и номенклатуру, а дату движения можно получить через измерение «Период». Чтобы сгруппировать данные по дню недели, в запросе применяется встроенная функция ДЕНЬНЕДЕЛИ, которая возвращает порядковый номер от 1 до 7.
Дополнительно можно подключать регистр сведений «Цены номенклатуры», если требуется рассчитать среднюю маржинальность, либо регистр накопления «Товары на складах» для оценки остатков в дни максимальных продаж. Для расширенной аналитики используют документ «Чек ККМ», содержащий сведения о времени покупки, что позволяет учитывать часы пик внутри каждого дня недели.
Структура обработки и схема компоновки
Обработка создается в конфигураторе или с помощью конструктора внешних отчетов в режиме «Файл — Новый — Внешний отчет». На закладке «Основная схема компоновки данных» добавляется новый элемент типа «Схема компоновки данных», в котором описываются наборы данных, параметры и пользовательские поля. Корневым узлом становится запрос на языке 1С, возвращающий виртуальную таблицу с полями «Дата», «ДеньНедели», «Сумма» и «Количество».
В настройках схемы задаются обязательные параметры — «НачалоПериода» и «КонецПериода», а также необязательный «Магазин» для отбора по торговой точке. На закладке «Параметры» указывается тип каждого элемента и флажки «Включать в доступные пользовательские поля». После сохранения схема автоматически становится источником для формируемых отчетных форм.
Текст запроса и группировка по дням
Запрос пишется на встроенном языке с использованием пакетного формирования данных, где первый пакет получает исходные движения регистра, а второй — вычисляет итоги. В секции ВЫБРАТЬ перечисляются измерения и ресурсы, а в секции СГРУППИРОВАТЬ ПО указываются поля, по которым производится свертка. Функция ДЕНЬНЕДЕЛИ встраивается как вычисляемое поле через подзапрос или через пользовательское поле схемы компоновки.
Ниже приведен перечень ключевых полей и приемов, которые потребуются при формировании выборки.
- Регистр накопления «Продажи» с виртуальной таблицей «Обороты»
- Параметры «&НачалоПериода», «&КонецПериода» в секции ГДЕ
- Функция ДЕНЬНЕДЕЛИ(ПродажиОбороты.Период) как числовое поле
- Группировка по полю «ДеньНедели» и сортировка по возрастанию
- Ресурсы «СуммаОборот» и «КоличествоОборот» через СУММА
- Отбор по складу или магазину через конструкцию В (&Магазины)
Настройка отборов и пользовательских полей
Чтобы отчет был удобен рядовому пользователю, в схеме компоновки создаются пользовательские поля, переводящие числовой номер дня в его словесное наименование — «Понедельник», «Вторник» и так далее. Это делается через выражение на встроенном языке с функцией ФОРМАТ или через оператор ВЫБОР, где каждому числу соответствует строка. Дополнительно настраивается условное оформление: выходные дни подсвечиваются одним цветом, будни — другим.
На закладке «Настройки» добавляется структура отчета с единственной группировкой по полю «ДеньНедели», после чего вложенной группировкой выбирается детализация по номенклатуре или по магазину. Для отображения результата в виде диаграммы переключается тип отчета на «Диаграмма» и выбирается секторный или гистограммный вариант, где осью значений служит сумма продаж.
Проверка и запуск в режиме предприятия
Перед публикацией обработка проверяется через консоль запросов и через пункт меню «Файл — Открыть» в режиме 1С:Предприятие. Следует убедиться, что отчет корректно отрабатывает на тестовой базе с реальными чеками за последние три месяца и возвращает осмысленные суммы. Если конфигурация работает в модели сервиса, дополнительно проверяется наличие прав на использование внешних отчетов у пользователей.
Когда отладка завершена, обработка подключается через раздел «Администрирование — Печатные формы, отчеты и обработки — Дополнительные отчеты и обработки». Файл прописывается в справочнике дополнительных обработок, указывается размещение в подсистеме «Продажи» или «Розничные продажи», после чего команда появляется в соответствующем разделе интерфейса.
Практическая ценность полученной аналитики
Готовая выборка по дням недели открывает несколько направлений оптимизации бизнес-процессов и работы торгового зала.
- Корректировка графика работы кассиров с учетом пиковой нагрузки
- Планирование поставок и приемки товара в дни с минимальной выручкой
- Запуск промо-акций и скидок в затишья для выравнивания трафика
- Расчет фонда оплаты труда на основе реальной загрузки сотрудников
- Сравнение эффективности работы разных магазинов сети в одинаковые дни
- Формирование управленческой отчетности для собственника
Используйте внешний отчет как основу для расширения аналитики: добавьте колонки со средним чеком, количеством чеков и возвратами, либо интегрируйте его с подсистемой KPI из решения KUBiK. Поделитесь готовой обработкой на профессиональном форуме 1С, опишите нюансы настройки и предложите коллегам собственные доработки — это ускорит развитие отчета и поможет участникам сообщества адаптировать его под собственные розничные сети.