7.9 KiB
MVP-4 «Финрез по подразделениям» — Design Draft
| Дата | 2026-05-13 |
| Статус | Draft — требует отдельного мозгового штурма по схеме расчёта |
| Зависимости | MVP-1 + MVP-2 + MVP-3 |
| Срок | 2-3 недели после MVP-3 + отдельная сессия с пользователем по схеме расчёта |
Назначение этого документа: зафиксировать то, что уже обсудили по MVP-4, чтобы не вспоминать заново. Это самая сырая из спек — финальная схема расчёта финреза требует отдельного мозгового штурма.
Цели MVP-4
Автоматизация расчёта финрезультата по подразделениям. Сейчас пользователь ведёт расчёт руками в Excel и кладёт итоги в самописную 1С (см. reference-finrez-1c).
Главные бизнес-вопросы
- Какой финрез у каждого подразделения за прошлый месяц / квартал / год?
- Прогноз финреза на основе текущей загрузки.
- Какие подразделения убыточны, какие прибыльны?
Текущий статус автоматизации (как есть)
В самописной 1С (без БСП, 9 объектов):
Document.РегистрацияПоказателейЗаПериод— ввод вручную раз в месяц.- ТЧ: Сотрудник × ФОТ × Оборот × КоличествоЧасов.
AccumulationRegister.ПоказателиЗаПериод— обороты с измерениями Сотрудник + Подразделение, ресурсы ФОТ + Оборот + Часы.
То есть в 1С лежит только итог. Сложная схема расчёта живёт в голове пользователя и Excel-файлах. По его словам — «считаю сам, кладу финальную информацию, конфигурацию придется дорабатывать под реальные расчеты».
Что планируется в MVP-4
Этап 1 — Сбор и автоматизация ввода (вместо Excel)
До детального проектирования — обязательная сессия с пользователем где он рассказывает:
- Как именно считается выручка по подразделению (распределение проектной выручки между подразделениями? через сотрудников?).
- Как считается расход (ФОТ + амортизация + накладные? распределение общих расходов?).
- Какие статьи используются (ДДС / БДР)?
- Как меняется схема по времени (что было до этого, что планируется).
Этап 2 — Доработка самописной 1С
Текущая конфигурация — приёмник готовых цифр. Нужно превратить в калькулятор:
- Добавить справочник статей затрат.
- Добавить документ с детализацией: Сотрудник × Статья × Сумма за период.
- Привязка к проектам (если расходы можно атрибутировать на проект).
- Привязка к данным из BIT.RA (фактические работы сотрудников).
- Добавить email в
Catalog.Сотрудники(для identity-resolution). - HTTP-сервисы — реализация в самописной 1С (см. architecture-transport-decisions).
Этап 3 — ETL в core
core.dept_finance_monthly (
department_id bigint REFERENCES core.department,
period_month date,
fot decimal(15,2),
oborot decimal(15,2),
hours_count decimal(15,2),
finrez decimal(15,2) -- oborot - fot - расходы
)
core.expense_item (
code text PRIMARY KEY,
label text,
category text -- ФОТ, амортизация, общие, ...
)
core.dept_finance_detailed (
department_id bigint,
period_month date,
employee_id bigint REFERENCES core.employee,
expense_item_code text REFERENCES core.expense_item,
amount decimal(15,2)
)
Этап 4 — Витрины
mart.dept_finance_monthly — по подразделению × месяц: выручка, расходы по статьям, финрез, маржинальность
mart.finrez_trend — динамика по подразделениям за 12 мес
mart.finrez_forecast — прогноз финреза на основе текущей загрузки + средних показателей
Этап 5 — Дашборд
«Финрез по подразделениям» в Metabase:
- Плитка «Финрез компании за прошлый месяц».
- Таблица по подразделениям: выручка, расходы, финрез, маржинальность %, цвета.
- График: динамика финреза по подразделениям за 12 месяцев.
- Прогноз следующего месяца на основе загрузки.
Identity-resolution
Сотрудники самописной 1С ↔ BIT.RA — сейчас нет общего ключа (Catalog.Сотрудники имеет только Код+Наименование). После добавления email в Catalog.Сотрудники — связь через email (см. identity-and-scope).
Open questions (для финализации перед стартом MVP-4)
- Схема расчёта финреза. Это самый главный вопрос. Без него нельзя проектировать. Отдельная сессия пользователя.
- Уровень детализации. Расход сразу по статьям или агрегированно? По сотрудникам или нет?
- Атрибуция выручки. Как делится выручка проекта между подразделениями (если в проекте сотрудники разных подразделений)? Пропорционально часам? По ставке × часы?
- Альтернатива — может проще не дорабатывать 1С, а реализовать расчёт прямо в core PG, оставив 1С только для просмотра итогов? Решение зависит от готовности пользователя работать с витриной в Metabase вместо отчёта в 1С.
- Прогноз финреза — на основе чего считать? Среднее за прошлые периоды + текущая загрузка + ставки. Или модель сложнее.
Зависимости от MVP-3
MVP-4 стартует когда:
- ✅ MVP-3 работает (есть core.project_finance с маржой).
- ✅ Отдельная сессия с пользователем по схеме финреза завершена.
- ✅ Решение по доработке finrez_1c принято (доработка vs расчёт в core).