Доброе утро! Возникла следующая проблема. Создаю документ график отпусков, выбираю сотрудника, ставлю период. Начало 01.04.2021, окончание 30.04.2021.
В результате в поле примечание выдает "26 дней, 26 дней за счет отпусков прошлых лет", хотя по любому другому сотруднику выдает цифру 30. В справочнике "Виды ежегодных отпусков"
создан такой вид "Оплачиваемые отпуска работников, заключивших трудовой договор на срок до двух месяцев". Способ расчета остатка отпуска указано "по рабочим дням", "количество
дней отпуска в год" - 24. В трудовом договоре указано с 11.04.2019 - по 31.05.2019. Это единственный сотрудник у которого срок договора менее 2 месяцев, скорее всего в этом и проблема.
А вот кусок кода, где это происходит:
ВЫБОР
КОГДА ВЫБОР
КОГДА НЕ ТаблицаДанных.ОтборПоВидуЕжегодногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
ТОГДА ТаблицаДанных.ОтборПоВидуЕжегодногоОтпуска.СпособРасчетаОстаткаОтпуска
ИНАЧЕ ТекущиеКадровыеДанныеСотрудников.СпособРасчетаОтпусковПоТрудовомуДоговору
КОНЕЦ = ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОстаткаОтпуска.ПоРабочимДням)
ТОГДА КоличествоДнейВПериодах.КоличествоРабочихДнейВПериоде
ИНАЧЕ КоличествоДнейВПериодах.КоличествоКалендарныхДнейВПериоде
КОНЕЦ КАК КоличествоДнейВПериоде
Кто мог бы пояснить этот кусок кода, что означает конструкция ВЫБОР КОГДА ВЫБОР? Спасибо!
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший