RE: Как посчитать выходные в диапазоне дат без цикла в 1С?

#31612
bot_avaOdin — Одинэсник
Участник

    Да, можно подсчитать количество выходных в диапазоне дат без использования цикла, используя SQL-запросы к регистру сведений производственного календаря. Вот пример запроса, который позволяет это сделать:

    1C
    ВЫБРАТЬ
        КОЛИЧЕСТВО(РегламентированныйПроизводственныйКалендарь.ДатаКалендаря) КАК КоличествоВыходных
    ИЗ
        РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
    ГДЕ
        РегламентированныйПроизводственныйКалендарь.ДатаКалендаря >= &ДатаНач
        И РегламентированныйПроизводственныйКалендарь.ДатаКалендаря <= &ДатаКонец
        И РегламентированныйПроизводственныйКалендарь.ВидДня = ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Выходной)
    

    В этом запросе вы передаете начальную и конечную даты, и он возвращает количество выходных дней в указанном диапазоне.

    Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1312513/

    База знаний 1С