Отчет по дням рождения за определенный период

1. user831994 23.09.17 07:04 Сейчас в теме
Нужно, чтобы отчет выводил информацию о сотрудниках, чьи дни рождения входят в указанный период. Запрос из справочника, добавил в параметры СКД НАчалоПериода и КонецПериода, но проблема в том, что в формате даты есть год, а необходимо чтобы был только день и месяц. Каким Как сделать, чтобы корректно сравнивал дни?
ВЫБРАТЬ
   Сотрудники.ДатаРождения,
   Сотрудники.ФИО КАК ФИО1,
   Сотрудники.Ссылка
ИЗ
   Справочник.Сотрудники КАК Сотрудники
ГДЕ
   (Месяц(Сотрудники.ДатаРождения) МЕЖДУ Месяц(&НачалоПериода) и Месяц(&КонецПериода) ) и
   (День(Сотрудники.ДатаРождения) МЕЖДУ День(&НачалоПериода) и День(&КонецПериода) )
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Adilgeriy 25 23.09.17 09:11 Сейчас в теме
а если период с 29.09.2017 по 03.10.2017 запрос точно не сможет корректно сравнить сотрудников. работать нужно через год к дате рождения прибавить разницу лет между годом рождения и текущим годом и полученные даты сравнивать с периодом запроса
3. vadim1011985 100 23.09.17 09:41 Сейчас в теме
Что то вроде такого

ДОБАВИТЬКДАТЕ(Сотрудники.ДатаРождения,ГОД,РАЗНОСТЬДАТ(Сотрудник.ДатаРождения,&НачалоПериода,ГОД)) МЕЖДУ &НачалоПериода И &КонецПериода


Единственный минус если брать период где год даты начала и даты окончания будут отличатся
4. YanTsys 12 25.09.17 12:54 Сейчас в теме
Месяц имеет большую значимость чем день вот и добавьте ему этой значимости с запасом в формуле, только при таком подходе &НачалоПериода и &КонецПериода должны быть за один и тот же год

Месяц(Сотрудники.ДатаРождения)*1000+День(Сотрудники.ДатаРождения) 
МЕЖДУ 
Месяц(&НачалоПериода)*1000+День(&НачалоПериода) 
и 
Месяц(&КонецПериода)*1000+День(&КонецПериода)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот