Запросы по сети

Запросы по сети: объём, длина, диаметры, теплопотребление — как запросы Zap десктопа.

Где найти
«Инструменты» (значок чемоданчика справа вверху) → Расчёты и диагностика → «Запросы по сети». То же — палитрой команд: Ctrl+K и начните набирать название.
Права
доступно всем, кто вошёл.
Короткое видео: как это выглядит в системе
Читаю как

Возможности

  • «Объём (Zap1)» — объём воды в трубопроводах, м³.
  • «Длина (Zap2)» — длина теплопроводов: всего, по подаче и по обратке, м.
  • «По диаметрам (Zap7)» — длина по условным диаметрам и итог.
  • «Диаметры и прокладка (Zap7_1)» — та же длина, разложенная по способам прокладки: канальная, бесканальная, надземная и другие из справочника.
  • «Теплопотребление (Zap3)», «Закрытые системы (Zap4)», «Открытые системы (Zap5)» — суммы полученных нагрузок (Гкал/ч) и расходов сетевой воды (т/ч) потребителей по результатам расчёта.
  • «Закрытые потребители (Zap6)» — список отключённых потребителей; щелчок по строке показывает узел на карте.
  • Запрос по одному фрагменту, по нескольким или по всей сети.

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

Окно открывается с фрагментами карты: выбранный фрагмент, а если его нет — все видимые. Фрагменты можно добавить или убрать в поле «Фрагмент». Поле пустое — запрос идёт по всей сети города (подсказка «Фрагмент не выбран — вся сеть (может быть медленно)»).

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

Признак линии решает, сколько труб у участка: 1 — подача и обратка в одной линии, 2 и 4 — подача, 3 и 5 — обратка.

  • Объём: V = π/4 · (Dвн/1000)² · L, для линий с признаком 1 — вдвое. Dвн — внутренний диаметр из паспорта, мм; L — длина, м.
  • Длина подачи — сумма длин линий с признаком 1, 2, 4; обратки — 1, 3, 5. Всего — подача + обратка.
  • По диаметрам: длина × 2 для признака 1, группировка по условному диаметру паспорта. Итог совпадает с «Всего» из Zap2.

Теплопотребление — суммы по pt_out последнего расчёта каждого фрагмента (с наибольшим номером): нагрузки на отопление (зависимое и независимое присоединение), вентиляцию, ГВ в открытых системах из подающего и обратного, рециркуляцию, ГВ в закрытых системах — и расходы по тем же статьям. Потребитель относится к открытой системе, если у него есть водоразбор из подачи или обратки (сумма расходов a12 + a13 больше 0), иначе — к закрытой. Фрагмент без расчёта даёт нули.

Закрытые потребители — обобщённые и отдельные потребители, у которых состояние не «включён» (пустое состояние тоже считается закрытым). Здесь фрагмент — у узла потребителя.

Запросы только читают данные и ничего не сохраняют.

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

  • Паспорта участков с длиной, внутренним и условным диаметром, способом прокладки.
  • Для Zap3–Zap5 — гидравлический расчёт фрагментов.
  • Окно доступно всем, кто вошёл.

Шаги

  1. Откройте «Инструменты» и наберите в поиске «Запросы по сети» — пункт выделен рамкой.

    Пункт «Запросы по сети» в панели «Инструменты»

  2. Нажмите пункт — откроется окно.

    Окно «Запросы по сети»

  3. Проверьте фрагмент и нажмите кнопку запроса, например «По диаметрам (Zap7)»: ниже появится таблица с итогом — здесь длина теплопроводов по условным диаметрам.

    Запросы по сети: шаг 3

Примеры

Фрагмент 74 «Маг. сети для расчёта НС» (копия базы Алматы):

  • Zap1: 121 906,4 м³.
  • Zap2: всего 394 839,6 м, подача 197 263,2 м, обратка 197 576,4 м.
  • Zap7: 18 диаметров от 40 до 1400 мм. Больше всего Ду 500 — 67 819,7 м, Ду 1000 — 58 474,2 м, Ду 800 — 50 800,9 м. Итого 394 839,6 м.
  • Zap7_1: у Ду 300 канальная прокладка — 36 423,8 м, бесканальная — 3131 м, надземная — 1745,6 м.
  • Zap3 по расчёту −25 °C: 958 потребителей; нагрузка на отопление при зависимом присоединении — 2007,8 Гкал/ч, на ГВ в открытых системах из подающего — 569,7 Гкал/ч. Zap4 — 44 потребителя, Zap5 — 914.
  • Zap6: закрытых потребителей нет («Нет закрытых потребителей»).

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

  • Таблица пустая — в выбранных фрагментах нет таких объектов. Очистите поле «Фрагмент», чтобы считать по всей сети.
  • В Zap3–Zap5 одни нули, «потребителей: 0» — у фрагмента нет расчёта; выполните расчёт.
  • Цифры меньше ожидаемых — часть участков начинается в соседнем фрагменте; добавьте его в поле «Фрагмент».
  • Запрос по всей сети идёт долго — выберите фрагменты.
  • В строке Zap6 щелчок не переводит карту — у узла нет координат.
  • Красное сообщение под кнопками — ошибка API с причиной; повторите запрос.

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

  • Данные: linesobj, heatpipesections, nodes, tubingtypes, calculation, pt_out, realconsumers, generalizedconsumers.
  • Маршруты не проверяют роль сами: при выключенном AUTH_REQUIRED_GET запросы доступны без входа.

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

  • API: GET /api/network-queries/volume, /length, /length-by-diameter (limit до 1000), /length-by-diameter-laying, /heat-consumption (system=closed|open), /closed-consumers; фрагменты — fragments=74,75 или fragment_id. Код — routers/analysis.py, database/network_queries.py.
  • Веб: components/NetworkQueriesDialog.vue, строки теплопотребления — utils/heatConsumption.ts, список фрагментов — utils/fragmentScope.ts.
  • MCP: инструмент network_statistics (без разделения Zap4/Zap5).
  • Тесты: tests/utils/heatConsumption.spec.ts, tests/utils/fragmentScope.spec.ts; API — test_zap6_closed.py, test_backend_contracts.py.
Хотите увидеть эту функцию на своих данных?Покажем ТГИД на демонстрации и ответим на вопросы инженеров.
Запросить демо