Именинники и юбиляры месяца: отчёт, отборы и рассылка в ЗУП 3.1
Содержание
Посмотреть дни рождения сотрудников
в 1С ЗУП 3.1
проще всего штатным отчётом: Кадры → Кадровые отчеты → Дни рождения сотрудников. Задаёте период, например следующий месяц, и нажимаете Сформировать — программа покажет всех работающих сотрудников, у которых день рождения попадает в эти даты, независимо от года рождения.
Типичная ситуация: в последний рабочий день месяца руководитель просит кадровика прислать список именинников на следующий месяц, а заодно отметить юбиляров, чтобы заранее заказать подарки. Ниже — как получить такой список за минуту, настроить его под себя, поставить на автоматическую отправку по почте и что делать, если отчёт выходит пустым или с лишними людьми.
Где в ЗУП найти отчёт с днями рождения сотрудников
Штатный отчёт лежит в разделе кадровых отчётов. Порядок такой:
- Откройте раздел
Кадры. - В панели раздела выберите
Кадровые отчеты. - В списке отчётов найдите
Дни рождения сотрудников. Если отчётов много, наберите в строке поиска списка слово «рождения». - Укажите период и организацию, нажмите
Сформировать.
Отчёт сравнивает только день и месяц даты рождения с выбранным периодом. Год роли не играет: при периоде 01.11–30.11 в список попадут все, кто родился в ноябре любого года.
Что выводит отчёт по умолчанию
- 👤 ФИО сотрудника;
- 📅 дату рождения;
- 🏢 подразделение и должность (в зависимости от варианта отчёта);
- 🔢 группировку по датам — удобно читать сверху вниз по календарю.
В отчёт попадают сотрудники, которые числятся работающими на дату окончания периода. Уволенные в нём не показываются — это главное отличие штатного отчёта от «самодельных» выборок по справочнику, о которых ниже.
Если вы ведёте несколько организаций в одной базе, оставьте поле организации пустым — список соберётся по всем сразу. Для холдинга так обычно и нужно: поздравляет общая служба персонала.
Доступ к отчёту
Дата рождения — персональные данные. Отчёт откроется только у пользователя, которому через группу доступа выдано право смотреть личные данные сотрудников. Обычно это профили кадровика и ответственного за кадры. Если у руководителя отдела отчёта не видно в списке, дело в правах, а не в ошибке программы.
Отборы по периоду, подразделению и возрасту
Сам по себе отчёт выдаёт список «всех за период». Чаще нужен срез: только свой отдел, только юбиляры, только следующая неделя. Всё это делается в настройках отчёта без программиста.
Период: что выбрать
| Задача | Какой период поставить |
|---|---|
| Поздравления на завтра | Конкретная дата или «Завтра» в выборе стандартного периода |
| План на месяц вперёд | «Следующий месяц» |
| Список на квартал для бюджета подарков | «Следующий квартал» |
| Кто родился сегодня | «Сегодня» |
Стандартные периоды типа «Следующий месяц» удобны тем, что пересчитываются сами. Сохраните отчёт с таким периодом — и через месяц он покажет уже новых именинников без правки дат.
Отбор по подразделению
- Нажмите
Настройкив форме отчёта. - На вкладке отборов добавьте поле
Подразделение. - Выберите вид сравнения «В группе», если нужен отдел вместе с вложенными, или «Равно» — только сам отдел.
- Нажмите
Закрыть и сформировать.
Как выделить юбиляров
Юбиляров удобно искать по возрасту, которого человек достигнет в этом году. Если в доступных полях отчёта есть возраст, поставьте отбор «В списке» со значениями 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70.
Если возраста среди полей нет, переключите настройки в расширенный вид (в форме настроек есть переключатель вида — обычный и расширенный). В расширенном виде можно добавить пользовательское поле-выражение:
Год(&КонецПериода) - Год(ДатаРождения)
Назовите поле «Исполнится лет», выведите его в колонки и поставьте по нему отбор. Имя параметра периода в вашем варианте отчёта может отличаться — подставьте то, что предлагает конструктор выражения в списке доступных полей.
Не меняйте штатный вариант отчёта, а сохраните свой: Ещё → Сохранить вариант отчета. Тогда после обновления конфигурации ваши настройки не перезапишутся, а коллеги будут видеть привычный вариант.
Сохранение собственного варианта
Сохранённому варианту дайте понятное имя: «Именинники следующего месяца — склад» или «Юбиляры квартала». При сохранении можно указать, кому он доступен: только автору или всем пользователям. Вариант появится в том же списке кадровых отчётов рядом со штатным.
Универсальный отчёт: гибкая выборка именинников
Когда штатного отчёта мало — например, нужен табельный номер, телефон и e-mail в одной таблице для рассылки открыток, — выручает Универсальный отчет. Он строит выборку по любому справочнику или регистру.
Как открыть
Универсальный отчёт не всегда вынесен в разделы. Надёжный путь — через Все функции:
- Включите отображение команды: главное меню →
Сервис → Параметры→ флажок «Отображать команду “Все функции”». - Откройте
Все функции → Отчеты → Универсальный отчет.
Как настроить выборку дней рождения
- Тип объекта —
Справочник, объект —Сотрудники. - В колонки добавьте
Наименованиеи через точку раскройтеФизическое лицо → Дата рождения. - В расширенных настройках создайте пользовательское поле «Месяц рождения» с выражением
Месяц(ФизическоеЛицо.ДатаРождения). - Поставьте отбор «Месяц рождения = 11» и сортировку по дню рождения: ещё одно поле
День(ФизическоеЛицо.ДатаРождения). - Сформируйте и сохраните вариант.
Справочник Сотрудники хранит всех, кто когда-либо работал. Универсальный отчёт по справочнику покажет и уволенных сотрудников, если специально их не отсечь. Поэтому для «живого» списка штатный отчёт надёжнее, а универсальный используйте для разовых выгрузок с проверкой.
Почему один человек выводится дважды
У сотрудника, который работает по внутреннему совместительству, в справочнике Сотрудники два элемента: основное место и совместительство. Физическое лицо при этом одно. Если строите отчёт по сотрудникам, такой человек появится в списке дважды. Строите по справочнику Физические лица — дубля не будет, но туда попадут и подрядчики по договорам ГПХ, и бывшие работники.
Автоматическая рассылка списка именинников
Каждый месяц формировать отчёт вручную не нужно. В ЗУП есть рассылка отчётов по расписанию — список именинников будет сам приходить руководителю на почту.
Что подготовить
- 📧 учётную запись электронной почты для отправки:
Администрирование → Органайзер → Учетные записи электронной почты; - ⚙️ включённую функцию рассылок:
Администрирование → Печатные формы, отчеты и обработки→ флажокРассылки отчетов; - 📋 сохранённый вариант отчёта с периодом «Следующий месяц».
Настройка рассылки
- В том же разделе администрирования откройте список
Рассылки отчетови нажмитеСоздать. - Добавьте в рассылку свой вариант отчёта «Дни рождения сотрудников».
- Укажите получателей и формат вложения — Excel или PDF.
- На вкладке расписания задайте запуск, например, 25-го числа каждого месяца в 9:00.
- Запишите рассылку и выполните её вручную один раз — проверьте, что письмо дошло.
Рассылка запускается регламентным заданием. В файловой базе регламентные задания выполняются, только пока в базе работает хотя бы один пользователь. В клиент-серверной базе их выполняет сервер 1С, если для информационной базы не установлена блокировка регламентных заданий.
Поставьте в рассылке период отчёта «Следующий месяц», а запуск — на 20–25 число. Так у руководителя остаётся неделя, чтобы заказать подарки и согласовать бюджет.
Можно ли разослать поздравления всем сотрудникам
Технически — да, рассылка отправит отчёт любому списку адресов. Юридически — нужна осторожность. Дата рождения относится к персональным данным, и распространять её среди всего коллектива можно только с согласия работника. Требования к обработке таких данных — в главе 14 ТК РФ и в законе № 152-ФЗ.
Безопасный вариант: список уходит руководителям и ответственному за праздники, а общий корпоративный календарь показывает только день и месяц тех, кто дал согласие.
Запрос в консоли и прямой SQL: когда нужны и чем опасны
Если нужно что-то нестандартное — например, именинники с учётом даты приёма или выгрузка во внешнюю систему, — список дней рождения сотрудников можно получить запросом.
Консоль запросов
Обработку «Консоль запросов» скачивают с ИТС и открывают как внешнюю: Файл → Открыть. Нужно право на интерактивное открытие внешних обработок — у обычного кадровика его обычно нет, открывает администратор.
Пример запроса: работающие сотрудники, у которых день рождения в заданном месяце, без уволенных.
ВЫБРАТЬ
Кадры.ФизическоеЛицо КАК ФизическоеЛицо,
Кадры.ФизическоеЛицо.ДатаРождения КАК ДатаРождения,
ДЕНЬ(Кадры.ФизическоеЛицо.ДатаРождения) КАК День,
ГОД(&ДатаОтчета) - ГОД(Кадры.ФизическоеЛицо.ДатаРождения) КАК ИсполнитсяЛет,
Кадры.ТекущееПодразделение КАК Подразделение
ИЗ
РегистрСведений.ТекущиеКадровыеДанныеСотрудников КАК Кадры
ГДЕ
МЕСЯЦ(Кадры.ФизическоеЛицо.ДатаРождения) = &Месяц
И Кадры.ДатаПриема <> ДАТАВРЕМЯ(1, 1, 1)
И (Кадры.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ Кадры.ДатаУвольнения > &ДатаОтчета)
СГРУППИРОВАТЬ ПО
Кадры.ФизическоеЛицо,
Кадры.ФизическоеЛицо.ДатаРождения,
Кадры.ТекущееПодразделение
УПОРЯДОЧИТЬ ПО
День
Параметры: &Месяц — число от 1 до 12, &ДатаОтчета — дата, на которую считаете возраст. Группировка по физическому лицу убирает дубли совместителей. Чтобы оставить только юбиляров, добавьте условие И ГОД(&ДатаОтчета) - ГОД(Кадры.ФизическоеЛицо.ДатаРождения) В (30, 35, 40, 45, 50, 55, 60).
Регистр ТекущиеКадровыеДанныеСотрудников хранит последние кадровые данные по каждому сотруднику. Если в вашем релизе состав полей другой, откройте конструктор запроса — он покажет доступные поля регистра.
Прямой SQL к базе
Прочитать данные можно и SQL-запросом к СУБД, но смысла в этом мало. Таблицы и поля в базе 1С названы служебными именами вида _Reference123 и _Fld4567, их соответствие объектам нужно выяснять отдельно. После обновления конфигурации номера могут смениться.
Никогда не изменяйте данные базы 1С через SQL — это ломает целостность, и типовая поддержка с такой базой работать не станет. Для выгрузки во внешние системы надёжнее запрос в самой 1С или публикация HTTP-сервиса.
Почему список пустой или в нём не те люди
Большинство «ошибок» отчёта — это не сбой программы, а данные или настройки.
Даты рождения 29 февраля
В невисокосный год такого сотрудника легко потерять. Отбор по месяцу (как в запросе выше) его покажет: месяц рождения — февраль. А отбор по точной дате 29.02 в обычном году не сработает, потому что такой даты нет. Если поздравляете в конкретный день, договоритесь заранее, какой день считаете праздничным, 28 февраля или 1 марта, и держите таких людей на заметке.
Частые вопросы
Можно ли посмотреть дни рождения в 1С:Бухгалтерии, а не в ЗУП?
Как вывести в отчёт возраст именинника?
Можно ли увидеть дни рождения детей сотрудников?
Как отправить отчёт сразу нескольким руководителям, каждому по его отделу?
Нужно ли согласие сотрудника, чтобы повесить список именинников на доску?
Источники
- Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»
- Трудовой кодекс РФ, глава 14 «Защита персональных данных работника»