Если в месяце есть праздничный день, например 4 ноября, то табель учета рабочего времени не правильно заполняет виды времени.
Например, если сотрудник был в отпуске с 1 по 4 ноября, то табель должен поставить ему виды времени "ОТ" с 1 по 3 ноября, 4 ноября "В".
Но вместо этого табель ошибочно заполняет "ОТ" с 1 по 30 ноября, то есть как будто сотрудник был в отпуске весь месяц.
Искал ошибку в коде программы и нашел.
По кнопке "Обновить строку" отрабатывается процедура формы документа СформируемСписокКомбинаций(п_Результат,п_Подразделение, п_ОМР, п_ПоСовместительству, п_ПроверятьСотрудников = Истина, п_ОбновлениеДокумента = Ложь, п_Обновление1Строки = Ложь)
В ней есть цикл по заполнению неотработанных видов времени. Он прерывается условием:
Если л_СчНеотр = л_Дн2 Тогда
Прервать;
КонецЕсли;
В данном случае, цикл бы прервался, когда л_Дн2=4, (последний неотработанный день), но оно не наступает, потому что
л_СчНеотр проскакивает число 4 из-за праздника в этом месте кода:
Если ЭлементыФормы.ТаблицаВремени.Колонки["Дн"+л_СчНеотр].ЦветФонаШапки = м_ЦветПраздн Тогда
Продолжить;
КонецЕсли;
И табель ошибочно заполняется до конца месяца последним видом неотработанного времени, в данном случае "ОТ".
Уважаемые разработчики, не могли бы вы исправить эту ошибку? Т.к. конфигурация находиться на поддержке без возможности изменений.
Если это не ошибка, то по возможности бы прояснить ситуацию.