Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Неиспользовано дней отпуска
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
TailorMade
Добрый день. УТП 8.3
Делаю запрос, в консоле запросов. Чтобы вытянуть количество дней неиспользованного отпуска по работнику.
ВЫБРАТЬ
    ИсточникДанных.ПериодДействияНачало КАК ПериодДействияНачало,
    ИсточникДанных.ПериодДействияКонец,
    ИсточникДанных.КоличествоМесяцев КАК ДнейФактическогоОтпуска,
    ИсточникДанных.ОплаченоДнейЧасов КАК ДнейИспользованногоОтпуска,
    ИсточникДанных.КоличествоМесяцев - ИсточникДанных.ОплаченоДнейЧасов КАК НеиспользованоДнейОтпуска,
    ИсточникДанных.Сотрудник,
    ИсточникДанных.Регистратор,
    ИсточникДанных.ВидРасчета
ИЗ
    (ВЫБРАТЬ
        Начисления.ПериодДействияНачало КАК ПериодДействияНачало,
        Начисления.ПериодДействияКонец КАК ПериодДействияКонец,
        Начисления.Сотрудник КАК Сотрудник,
        Начисления.Регистратор КАК Регистратор,
        Начисления.ВидРасчета КАК ВидРасчета,
        СУММА(Начисления.ОплаченоДнейЧасов) КАК ОплаченоДнейЧасов,
        РАЗНОСТЬДАТ(ВложенныйЗапрос.Период, Начисления.ПериодДействияНачало, МЕСЯЦ) * 2 КАК КоличествоМесяцев,
        РАЗНОСТЬДАТ(ВложенныйЗапрос.Период, Начисления.ПериодДействияНачало, МЕСЯЦ) * 2 - Начисления.ОплаченоДнейЧасов КАК НеиспользованоВЗ
    ИЗ
        РегистрРасчета.Начисления КАК Начисления,
        (ВЫБРАТЬ
            МИНИМУМ(РаботникиОрганизаций.Период) КАК Период
        ИЗ
            РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
        ГДЕ
            РаботникиОрганизаций.Сотрудник = &Сотрудник) КАК ВложенныйЗапрос
    ГДЕ
        Начисления.ВидРасчета.Код = "00018"
        И Начисления.Сотрудник = &Сотрудник
        И Начисления.ПериодДействияНачало >= &НачалоПериода
        И Начисления.ПериодДействияКонец <= &КонецПериода
    
    СГРУППИРОВАТЬ ПО
        Начисления.ПериодДействияНачало,
        Начисления.ПериодДействияКонец,
        Начисления.Сотрудник,
        Начисления.Регистратор,
        Начисления.ВидРасчета,
        РАЗНОСТЬДАТ(ВложенныйЗапрос.Период, Начисления.ПериодДействияНачало, МЕСЯЦ) * 2,
        РАЗНОСТЬДАТ(ВложенныйЗапрос.Период, Начисления.ПериодДействияНачало, МЕСЯЦ) * 2 - Начисления.ОплаченоДнейЧасов) КАК ИсточникДанных

УПОРЯДОЧИТЬ ПО
    ПериодДействияНачало


Но вот какая проблема:
Если, к примеру, сотрудник пошел в отпуск и
Дней фактического отпуска= 20, Дней использованного отпуска = 13, ТОГДА Дней неиспользованного отпуска = 7. Всё верно. Но второй поход в отпуск считает: Дней фактического отпуска= 22, Дней использованного отпуска = 1, ТОГДА Дней неиспользованного отпуска = 21

Как правильно поступить в таком случае?
TailorMade
Прошу помощи
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.