База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как вывести в 1С:ЗУП список сотрудников в отпуске за свой счёт весь месяц? › Ответ в теме: Как вывести в 1С:ЗУП список сотрудников в отпуске за свой счёт весь месяц?
Чтобы вывести список сотрудников, которые весь месяц находились в отпуске за свой счёт в 1С:Зарплата и Управление Персоналом (ЗУП), нужно сделать выборку по документам отпусков за свой счёт, охватывающим весь месяц.
Алгоритм действий:
1. Определить период — например, месяц, за который нужно проверить отпуск.
2. В запросе выбрать сотрудников, у которых есть документ «Отпуск без сохранения заработной платы» (или соответствующий вид отпуска за свой счёт), при этом период отпуска полностью покрывает весь месяц.
3. Для этого в запросе нужно проверить, что дата начала отпуска меньше или равна первому дню месяца, а дата окончания отпуска — больше или равна последнему дню месяца.
Пример запроса на языке 1С (Запрос.Текст):
|
1 2 3 4 5 6 7 8 9 10 |
ВЫБРАТЬ | ОтпускаСотрудников.Сотрудник КАК Сотрудник, | ОтпускаСотрудников.ДатаНачала, | ОтпускаСотрудников.ДатаОкончания |ИЗ | Документ.ОтпускСотрудника КАК ОтпускаСотрудников |ГДЕ | ОтпускаСотрудников.ВидОтпуска = &ВидОтпускаЗаСвойСчёт | И ОтпускаСотрудников.ДатаНачала <= &ДатаНачалаМесяца | И ОтпускаСотрудников.ДатаОкончания >= &ДатаОкончанияМесяца |
Пояснения:
— ВидОтпуска — это реквизит документа, указывающий вид отпуска. Нужно подставить справочник или константу, соответствующую отпуску за свой счёт.
— ДатаНачалаМесяца — первый день месяца, например, ‘2026-03-01’.
— ДатаОкончанияМесяца — последний день месяца, например, ‘2026-03-31’.
Если в вашей конфигурации вид отпуска за свой счёт называется иначе, уточните его в справочнике «Виды отпусков».
Если нужно получить список с ФИО сотрудников, то можно добавить соединение с справочником «Сотрудники».
Пример с добавлением ФИО:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
ВЫБРАТЬ | Сотрудники.ФизЛицо.Наименование КАК ФИО, | ОтпускаСотрудников.ДатаНачала, | ОтпускаСотрудников.ДатаОкончания |ИЗ | Документ.ОтпускСотрудника КАК ОтпускаСотрудников | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Сотрудники КАК Сотрудники | ПО ОтпускаСотрудников.Сотрудник = Сотрудники.Ссылка |ГДЕ | ОтпускаСотрудников.ВидОтпуска = &ВидОтпускаЗаСвойСчёт | И ОтпускаСотрудников.ДатаНачала <= &ДатаНачалаМесяца | И ОтпускаСотрудников.ДатаОкончания >= &ДатаОкончанияМесяца |
Параметры запроса нужно заполнить в коде:
|
1 2 3 |
Запрос.УстановитьПараметр("ВидОтпускаЗаСвойСчёт", Справочники.ВидыОтпусков.ОтпускБезСохраненияЗарплаты); Запрос.УстановитьПараметр("ДатаНачалаМесяца", НачалоМесяца(ТекущаяДата)); Запрос.УстановитьПараметр("ДатаОкончанияМесяца", КонецМесяца(ТекущаяДата)); |
Если в вашей базе отпуск за свой счёт оформляется другим документом или видом, подкорректируйте запрос соответственно.
Таким образом вы получите список сотрудников, которые весь месяц были в отпуске без сохранения заработной платы.
https://helpf.pro/faq/view/420.html (работа с начислениями и отпусками)