Skip to content

Repository files navigation

Построитель отчетов для интернет-магазина

Проект представлен в рамках участия в Всероссийском чемпионате «Р7-ОФИС» 2025 https://t.me/p7office_channel/1846

Другие решения чемпионата https://drive.google.com/drive/folders/1ckviRn0A8eEAzB21Y8r3ufAvTLa7Mhg4?usp=sharing

Описание проекта

Данный проект представляет собой макрос для R7 Office, который анализирует данные интернет-магазина из CSV-файла и автоматически создает визуальные отчеты в виде таблиц и графиков. Макрос разработан для быстрого анализа продаж и формирования наглядных представлений о популярности категорий товаров и брендов.

Возможности

  • Загрузка данных: Импорт данных из CSV-файла с настраиваемым разделителем
  • Фильтрация по периоду: Анализ данных за указанный временной период
  • Анализ категорий: Формирование статистики продаж по категориям товаров
  • Анализ брендов: Формирование статистики продаж по брендам
  • Визуализация: Автоматическое создание таблиц и графиков для наглядного представления результатов
  • Отчеты: Генерация отчетов "Покупки по категориям" и "Покупки по брендам"

Структура отчета

Каждый отчет содержит:

  1. Топ-позиции:

    • "Самые популярные" - топ-3 по количеству покупок
    • "Самые дорогие чеки" - топ-3 с наибольшей средней ценой покупки
  2. Детальные таблицы (до 15 записей, отсортированных по алфавиту):

    • Количество покупок
    • Средняя цена покупки
  3. Графики:

    • Столбчатые диаграммы для визуализации количества покупок и средней цены

Структура проекта

src/
  └──  index.js            # Основной файл макроса с точкой входа

Порядок работы макроса

  1. Загрузка пользовательских настроек (путь к CSV-файлу и период анализа)
  2. Конвертация пути к файлу в корректный URL-формат
  3. Загрузка данных из CSV-файла
  4. Парсинг CSV в структуру данных для анализа
  5. Создание фильтра по периоду на основе пользовательских настроек
  6. Анализ данных и получение статистики по категориям и брендам
  7. Создание отчетов с графиками
  8. Уведомление пользователя о завершении работы

Как использовать

  1. Откройте документ R7 Office (таблицу)
  2. Перейдите в лист "Анализ данных"
  3. Укажите путь к CSV-файлу в ячейке C4
  4. Задайте период анализа в ячейках C6 (начало) и C7 (конец)
  5. Запустите макрос
  6. После выполнения макроса будут созданы два новых листа с отчетами:
    • "Покупки по категориям"
    • "Покупки по брендам"

Формат входных данных (CSV)

CSV-файл должен содержать следующие колонки:

  • brand - бренд товара
  • category_code - код категории товара (может иметь формат иерархии "уровень0.уровень1.уровень2")
  • event_time - время события
  • event_type - тип события (view/cart/purchase)
  • price - цена товара
  • product_id - идентификатор товара
  • user_id - идентификатор пользователя
  • user_session - идентификатор сессии пользователя

Датасет

Для тестирования и демонстрации работы макроса вы можете использовать следующий датасет:

Технические особенности

  • Разработано для R7 Office
  • Использует API R7 Office для работы с таблицами и построения диаграмм
  • Для логирования ошибок используется console.error вместо Asc.scope.alert для обеспечения совместимости
  • Поддерживает как локальные, так и удаленные источники данных CSV
  • Корректно обрабатывает и конвертирует форматы дат между R7 Office и JavaScript

Примечания для разработчиков

  • Для отладки используйте консоль браузера (все ошибки логируются через console.error)
  • При изменении типов данных используйте вложенную структуру объектов в JSDoc комментариях

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages