Сменные рапорты вместо Excel: как устроен производственный портал
Сменный рапорт — это не только таблица, а маршрут ввода, сверки, утверждения и версий. Как производственный портал удерживает этот процесс.
Серия «Свои инструменты: заметки о разработке»
Сменный рапорт выглядит простой таблицей, пока не начинаешь разбирать его путь. Одна смена передаёт данные другой, суточный итог собирается из нескольких рапортов, затем его проверяют и утверждают. Для этой цепочки я разрабатываю производственный портал.
Почему таблицы перестают справляться
Excel хорошо считает, но сам по себе не задаёт порядок работы. Когда файлы пересылают между участками и сменами, быстро появляются вопросы: какая версия последняя, кто изменил показатель, сошлись ли данные при передаче и какой вариант уже утверждён.
Проблема находится не в формате ячейки. Рапорт — это процесс с ролями, состояниями и контрольными точками. Если этот процесс хранится только в именах файлов и договорённостях, итог приходится собирать вручную.
Маршрут сменного рапорта
Мастер заполняет рапорт своего участка и подаёт его на проверку. Следующая смена принимает переданные показатели. Расхождение между тем, что одна смена сдала, а другая приняла, должно быть видно до формирования суточного итога.
После закрытия смен система собирает сутки. Ответственный проверяет результат, при необходимости возвращает его с комментарием и затем утверждает. В сводный рапорт попадает последняя утверждённая версия, а черновая правка не меняет итог незаметно.
Версии вместо копий файлов
Утверждённую запись нельзя молча переписать. Исправление создаёт следующую версию, а предыдущая остаётся в истории. Для каждого действия сохраняются автор и время. Так можно восстановить, из каких исходных данных получился конкретный суточный или месячный результат.
Это особенно важно после отправки отчёта руководству: позднее исправление источника не должно задним числом менять уже отправленный снимок. Новый расчёт формируется как новая версия.
Справочники и правила расчёта
Показатели, единицы измерения, оборудование, причины простоев и правила агрегирования хранятся как данные, а не зашиваются в подписи экранов. Записи справочников можно выводить из действия, сохраняя их в старых рапортах.
Нормы и коэффициенты требуют отдельного версионирования с датой начала действия. Если нужного источника или нормы нет, портал должен показать неполноту, а не подставить ноль и не выбрать последнее найденное значение.
Что реализуется в портале
- ввод рапортов по сменам и участкам;
- сверка передачи показателей между сменами;
- подача, возврат с комментарием и утверждение;
- история версий и журнал действий;
- суточные, недельные и месячные сводки;
- роли для ввода, проверки, утверждения и ведения справочников.
Техническая основа
Портал разрабатывается на .NET 10, Blazor Server и PostgreSQL 17. Расчёты и правила предметной области отделены от интерфейса. Инструкции для пользователей и администраторов находятся рядом с системой и обновляются вместе с ней.
Проект не зависит от 1С:ERP и хранит производственные данные в собственной базе. Если понадобится интеграция, она должна передавать согласованный результат, а не превращать одну систему в скрытое продолжение другой.
Текущий статус
Проект находится в разработке, production-развёртывания пока нет. Поэтому здесь описано устройство системы и принятые проектные решения, без заявления о достигнутом производственном эффекте.
Другие собственные проекты собраны в разделе «Разработка». Если нужно описать похожий процесс и состав первой версии системы, можно начать с инструмента «Собрать цифровой контур».