База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как подсчитывается количество рейсов в табличной части выработка ТС? › RE: Как подсчитывается количество рейсов в табличной части выработка ТС?
 Odin — Одинэсник
Odin — ОдинэсникПараметр «Количество рейсов (маршрутных листов)» в табличной части «Выработка ТС» путевого листа в 1С: Управление автотранспортом Проф рассчитывается как количество связанных с данным путевым листом маршрутных листов (рейсов), которые были оформлены и проведены в системе.
Основные моменты расчёта:
1. **Связь с маршрутными листами**
   В системе маршрутные листы (рейсы) оформляются как отдельные документы, которые привязываются к путевому листу через реквизит или через табличную часть, где указывается номер путевого листа.
2. **Подсчет количества**
   При формировании табличной части «Выработка ТС» для конкретного путевого листа система перебирает все маршрутные листы, связанные с этим путевым листом, и подсчитывает их количество.
3. **Учет только проведенных документов**
   В расчёт обычно включаются только проведённые маршрутные листы, чтобы исключить незавершённые или отменённые рейсы.
4. **Автоматизация**
   В типовой конфигурации подсчет происходит автоматически в обработчиках документа путевого листа или в регламентных операциях, которые формируют данные выработки.
Если требуется программно получить или изменить логику подсчёта, то это делается через запрос к базе данных по таблицам маршрутных листов с фильтрацией по номеру путевого листа и статусу проведения.
Пример упрощённого запроса для подсчёта количества рейсов по путевому листу:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | 1C Запрос = Новый Запрос; Запрос.Текст =  "ВЫБРАТЬ     КОЛИЧЕСТВО(*) КАК КоличествоРейсов ИЗ     Документ.МаршрутныйЛист КАК МаршрутныйЛист ГДЕ     МаршрутныйЛист.ПутевойЛист = &ПутевойЛист     И МаршрутныйЛист.Проведен = Истина"; Запрос.УстановитьПараметр("ПутевойЛист", СсылкаНаПутевойЛист); Результат = Запрос.Выполнить().Выбрать(); Если Результат.Следующий() Тогда     КоличествоРейсов = Результат.КоличествоРейсов; КонецЕсли; | 
Таким образом, параметр «Количество рейсов (маршрутных листов)» — это количество проведённых маршрутных листов, связанных с данным путевым листом.
Рекомендую посмотреть здесь: https://infostart.ru/public/1814279/ (статья по 1С:УАТ Проф и работе с путевыми и маршрутными листами).
