Протокол расчёта

Протокол расчёта: разбор ошибок и предупреждений с переходом к объектам, сравнение с прошлым расчётом тех же фрагментов, полный текст расчёта и история сохранённых протоколов.

Где найти
кнопка «Протокол» в верхней строке; открывается сам при запуске расчёта.
Права
смотреть — всем, кто вошёл; «Остановить», «Пересчитать» и «Объяснить» (ИИ) — право «Запуск расчётов».
Функция показана в сквозном сценарии:Расчёт и анализ режима
Читаю как

Возможности

  • Разбор ошибок и предупреждений расчёта по категориям: регуляторы и байпасы, расчётные схемы, узлы с заданным напором, подсети без источника и другие.
  • Сравнение с прошлым расчётом тех же фрагментов: «+2 к прошлому», «−4 к прошлому».
  • Переход к объектам: значок объекта в сообщении приближает карту и открывает карточку (для регулятора, байпаса, насоса — нужный журнал); «Все на карте» — метки у всех объектов с проблемами.
  • Кнопки «Исправить: …» ведут туда, где правится причина: параметры расчёта, температурный график, карточка объекта, расчётная схема, узел с заданным напором.
  • «Что исправить» — Excel со списком проблем и ссылками на объекты на карте.
  • «Объяснить» — разбор протокола помощником ИИ простыми словами (если ИИ включён).
  • История: последние 100 сохранённых протоколов любого фрагмента.

Как это работает

Движок расчёта пишет протокол в виде строк с кодами сообщений. После расчёта воркер разбирает их в записи calculation_protocol: уровень (ошибка, предупреждение), категория, фрагмент, подсеть, объекты. Повторяющиеся сообщения сворачиваются («повторов 12»). Текст сообщений переводится на язык интерфейса при выдаче.

Сравнение «к прошлому» берёт предыдущий расчёт тех же фрагментов. Расчёт по списку даёт один протокол на все фрагменты (общий номер запроса).

Панель протокола прикреплена к низу карты: высота меняется перетаскиванием края или стрелками ↑↓ на нём (Shift — крупный шаг), есть «Во весь экран» и «Свернуть». Вкладка «Текст расчёта» идёт за новыми строками, пока вы у конца списка; отлистали вверх — прокрутка не прыгает.

Что нужно для работы

  • Хотя бы один выполненный расчёт.
  • «Объяснить» — помощник ИИ включён на сервере и право «Запуск расчётов».

Шаги

  1. «Сохранённые протоколы» (значок истории): последние 100 расчётов с числом ошибок и предупреждений. Щелчок по строке открывает протокол.

    Протокол расчёта: шаг 1

  2. Вкладка «Анализ»: плитки «Ошибки» и «Предупреждения» с изменением «к прошлому», категории, поиск, переход к предыдущей и следующей проблеме, «Что исправить» (Excel).

    Протокол расчёта: шаг 2

  3. «Все на карте» ставит метки у объектов с проблемами: красные — ошибки, жёлтые — предупреждения. «Скрыть на карте» убирает их.

    Протокол расчёта: шаг 3

  4. Вкладка «Текст расчёта» — полный вывод расчёта со временем; ссылки на объекты переводят карту к ним.

    Протокол расчёта: шаг 4

Примеры

Регулятор не держит уставку. Плановый расчёт фрагмента 74: «Регулятор давления [(6-8 УР2ЧАП) M2 1КЗ-22А О - M2 1КЗ-22Б О] не может обеспечить давление в узле… Задано 59.0 м., получено 51.19 м., расход 0.16 т/ч». Кнопка «Исправить: Журнал регуляторов» открывает журнал на этом регуляторе: проверьте уставку и место установки.

Если не получается

  • «Протокол появится после расчёта» — в этом сеансе расчётов не было; откройте сохранённый через «Сохранённые протоколы».
  • Значок объекта не переводит карту — объект удалён после расчёта.
  • «Помощник ИИ не ответил» — нет связи с моделью или ИИ выключен на сервере; повторите позже.

Для администратора

  • Протоколы хранятся CALC_PROTOCOL_KEEP_DAYS дней; таблицу calculation_protocol воркер создаёт сам.
  • ИИ: AI_ENABLED, AI_MODEL, ANTHROPIC_API_KEY, ограничения AI_MAX_INPUT_CHARS, AI_MAX_OUTPUT_TOKENS, AI_TIMEOUT_S. Ответ кешируется в calculation_protocol.ai_summary по языкам.

Для разработчика

  • API: GET /api/v1/calculations/protocols, /protocols/{id}, /protocols/by-request/{request_id}, /protocols/by-request/{request_id}/fixes.xlsx, POST /protocols/locate (до 500 объектов), POST /api/v1/ai/calc-protocol/explain.
  • Веб: components/CalculationProtocol.vue, разбор и сравнение — utils/calcProtocol.ts, очистка HTML вывода — utils/protocolHtml.ts.
  • Тесты: tests/components/CalculationProtocol.spec.ts, tests/utils/calcProtocol.spec.ts; API — test_calc_protocol.py, test_protocol_fixes.py, test_protocol_i18n.py, test_ai_calc_protocol.py.
Хотите увидеть эту функцию на своих данных?Покажем ТГИД на демонстрации и ответим на вопросы инженеров.
Запросить демо