Имя: Пароль:
1C
1С v8
Остаток отпуска сотрудника
0 vanyshan
 
30.11.20
09:16
Доброе утро! Возникла следующая проблема. Создаю документ график отпусков, выбираю сотрудника, ставлю период. Начало 01.04.2021, окончание 30.04.2021.
В результате в поле примечание выдает "26 дней, 26 дней за счет отпусков прошлых лет", хотя по любому другому сотруднику выдает цифру 30. В справочнике "Виды ежегодных отпусков"
создан такой вид "Оплачиваемые отпуска работников, заключивших трудовой договор на срок до двух месяцев". Способ расчета остатка отпуска указано "по рабочим дням", "количество
дней отпуска в год" - 24. В трудовом договоре указано с 11.04.2019 - по 31.05.2019. Это единственный сотрудник у которого срок договора менее 2 месяцев, скорее всего в этом и проблема.
А вот кусок кода, где это происходит:

ВЫБОР
            КОГДА ВЫБОР
                    КОГДА НЕ ТаблицаДанных.ОтборПоВидуЕжегодногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
                        ТОГДА ТаблицаДанных.ОтборПоВидуЕжегодногоОтпуска.СпособРасчетаОстаткаОтпуска
                    ИНАЧЕ ТекущиеКадровыеДанныеСотрудников.СпособРасчетаОтпусковПоТрудовомуДоговору
                КОНЕЦ = ЗНАЧЕНИЕ(Перечисление.СпособыРасчетаОстаткаОтпуска.ПоРабочимДням)
                ТОГДА КоличествоДнейВПериодах.КоличествоРабочихДнейВПериоде
            ИНАЧЕ КоличествоДнейВПериодах.КоличествоКалендарныхДнейВПериоде
        КОНЕЦ КАК КоличествоДнейВПериоде

Кто мог бы пояснить этот кусок кода, что означает конструкция ВЫБОР КОГДА ВЫБОР? Спасибо!
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.