erp_manual

This commit is contained in:
r_minaeva
2022-10-24 17:10:46 +05:00
parent ea2c9f7f80
commit 20c68d585f
231 changed files with 442 additions and 246 deletions

View File

@ -0,0 +1,51 @@
# Автотранспорт
## Форма для ввода пробега техники
Документ «Форма для ввода пробега техники» предназначен для отражения всех маршрутов движения техники в течении отчетного периода (месяца) и формирования путевых листов на основании введенной информации.
![Рисунок 1 Реестр документа «Форма для ввода пробега техники»](./image_1.png)
Для формирования документа необходимо указать в шапке:
- Дату документа,
- Период с / по,
- Автомобиль,
- Водитель,
- Показания одометра на начало,
- Показания одометра на конец,
- Остаток ГСМ на начало,
- Статус документа.
![Рисунок 2 Форма документа «Форма для ввода пробега техники»](./image_2.png)
При вводе периода и выборе автомобиля автоматически заполняются поля : «показания одометра на начало», «остаток ГСМ на начало» и «заправлено».
Данные для полей «показания одометра на начало», «остаток ГСМ на начало» подтягиваются из последнего путевого листа с датой выезда до начала указанного периода. Есть возможность редактировать эти поля вручную.
Данные для поля «заправлено» подтягиваются из раздаточных ведомостей по указанному автомобилю с датами заправки - в пределах указанного периода.
При вводе значений в поля «показания одометра на начало» и «показания одометра на конец» автоматически рассчитываются значения полей «Пробег за период» и «Расход по норме». «Пробег за период» рассчитывается как разница «показаний одометра на конец» и «показаний одометра на начало». «Расход по норме» рассчитывается согласно нормам расхода топлива на пробег на указанный автомобиль на начало указанного периода, с учетом зимнего коэффициента.
При изменении значений полей «Остаток ГСМ на начало», «Заправлено», «Расход по норме» автоматически рассчитывается значение поля «Остаток ГСМ на конец».
В табличной части документа необходимо выбрать маршруты движения из справочника, указать «количество поездок за период» для каждого маршрута. В столбец «Расстояние» значение подтягивается из справочника маршрутов, но есть возможность это значение изменить вручную.
Столбец «Итого пройдено по маршруту» рассчитывается как произведение столбцов «Расстояние» и «количество поездок за период».
Необходимо добиться, чтобы сумма по всем строкам по столбцу «Итого пройдено по маршруту» была равна значению поля «Пробег за период» в шапке документа.
В строках, которыми должны будут начинаться путевые листы, необходимо установить флаг в столбце «Стартовый маршрут».
В строках, которыми должны будут заканчиваться путевые листы, необходимо установить флаг в столбце «Финишный маршрут».
После заполнения документа необходимо нажать кнопку "Сформировать ПЛ" на верхней панели инструментов. В результате будут сформированы путевые листы по указанному автомобилю и указанному водителю в рабочие дни указанного периода с указанными маршрутами.
Для каждого путевого листа маршруты подбираются по следующему алгоритму: находится строка, у которой установлен флаг в столбце «Стартовый маршрут», вставляется в путевой лист первым нарядом в таблицу «Заказчики». Из этой строки находится конечная точка (столбец «Куда»), назовем её «Точка 2». Далее ищется строка, в которой в столбце «Откуда» - значение нашей «Точки 2» и не установлен флаг «Финишный маршрут». Если находится такая строка, то вставляется в путевой лист вторым нарядом. Из неё находится «Точка 3». И так далее, пока цикл не дойдёт до строки с установленным флагом «Финишный маршрут». Если не нашлась такая строка, то ищется строка , в которой в столбце «Откуда» - значение нашей «Точки 2» и установлен флаг «Финишный маршрут». Если находится такая строка, то вставляется в путевой лист вторым, последним нарядом.
Если в результате подбора маршрутов получается хотя бы один путевой лист, в котором нет строки с «Финишным маршрутом» или нет строки со «Стартовым маршрутом», то ни один путевой лист не создается и программа выдает ошибку с соответствующим текстом.
Все строки из раздаточных ведомостей по указанному автомобилю за указанный период будут вставлены в путевые листы с соответствующими датами в таблицу заправок. Если в раздаточной ведомости указанная дата заправки является выходным или праздничным днём, то эти строки будут вставлены в путевые листы с ближайшими последующими датами. Если же таковых не будет, тогда строки из раздаточных ведомостей будут вставлены в путевые листы с ближайшими предыдущими датами. Все заправки в пределах каждого путевого листа группируются по видам топлива и общее количество каждого вида топлива записывается в столбец «Заправка» в таблицу «Движение ГСМ» в строку с соответствующим видом топлива.
В сформированных путевых листах автоматически рассчитываются нормы расхода топлива для каждого наряда и общее количество нормативного расхода топлива записывается в таблицу «Движение ГСМ» в столбцы «Расход факт» и «Расход норма».
В каждом путевом листе в таблице «Движение ГСМ» по каждому виду топлива рассчитывается «Остаток топлива при заезде» по формуле : «Остаток топлива при заезде» = «Остаток топлива при выезде» - «Расход факт» + «Заправлено».
В первом по дате сформированном путевом листе значения полей «Показание одометра на начало» и «Остаток топлива при выезде» будут соответствовать полям из шапки документа «Форма для ввода пробега техники». В каждом следующем путевом листе «показания одометра на начало» и «Остаток топлива при выезде» копируются с предыдущего путевого листа соответственно с «показания одометра на конец» и «Остаток топлива при заезде».