Другое · 9 мин
Как в 1С сделать отчет по возрасту сотрудников
Как сформировать отчет по возрасту сотрудников в 1С:ЗУП и 1С:Предприятие: типовые отчеты, настройка СКД, группировка по возрастным интервалам, проверка данных.
Отчет по возрасту сотрудников нужен кадровикам для анализа структуры персонала, планирования подбора, подготовки статистики для руководства и отчетности в госорганы. В конфигурациях 1С:Зарплата и управление персоналом (ЗУП) такие данные можно получить несколькими способами: через типовые отчеты, универсальную форму «Отчеты и справки» или настройку произвольного отчета на СКД.
Выбор способа зависит от задачи. Если нужен простой список сотрудников с возрастом на текущую дату — достаточно штатных средств. Если требуется распределение по возрастным интервалам (например, до 30 лет, 30–40, 40–50, старше 50) или возраст на конкретную дату в прошлом — потребуется настройка варианта отчета или собственный запрос.
Основа любого такого отчета — корректно заполненные даты рождения в карточках физических лиц. Если даты рождения не введены или внесены с ошибками, отчет покажет искаженные данные, поэтому перед формированием имеет смысл проверить полноту сведений.
Что нужно знать перед формированием отчета
Возраст в 1С не хранится как отдельное поле — он вычисляется от даты рождения физического лица на дату формирования отчета. Это значит, что один и тот же отчет, сформированный в разные дни, может показать разный возраст для сотрудников, у которых между этими датами был день рождения.
Если вам нужен возраст на конкретную историческую дату (например, «сколько лет было сотрудникам на 1 января»), стандартные списки не подойдут — потребуется отчет с расчетом возраста от заданной даты. Такой расчет делается через пользовательское поле в СКД или через консоль запросов.
Также проверьте права доступа. Отчеты по персональным данным доступны пользователям с ролями кадровика или расчетчика. Если отчет не открывается или показывает пустой результат, первым делом уточните у администратора наличие прав на чтение данных физических лиц.
Способ 1: типовые отчеты в 1С:ЗУП
Самый быстрый вариант — использовать штатные кадровые отчеты. Откройте раздел «Кадры», затем «Отчеты, справки». В списке найдите отчет «Штатные сотрудники» или «Сотрудники» (точное название зависит от версии конфигурации).
Откройте отчет и перейдите в настройки через кнопку «Настройки». На вкладке «Поля» добавьте поле «Возраст» — оно доступно в структуре данных физического лица. После этого в таблице рядом с ФИО появится колонка с возрастом на текущую дату.
Для отбора действующих сотрудников добавьте условие «Работает в организации = Да» или установите период отчета. Сохраните настроенный вариант через «Еще — Сохранить вариант отчета», чтобы не настраивать заново.
- 1Откройте «Кадры — Отчеты, справки» и выберите отчет по сотрудникам
- 2Нажмите «Настройки» и на вкладке «Поля» добавьте «Возраст»
- 3Установите отбор по работающим сотрудникам и нужной организации
- 4Сформируйте отчет и проверьте заполненность колонки «Возраст»
- 5Сохраните вариант отчета под понятным именем
Способ 2: универсальный отчет
Если типовой отчет не содержит нужных полей, используйте «Универсальный отчет» (раздел «Администрирование — Печатные формы, отчеты и обработки» в типовых конфигурациях). Он позволяет строить отчет по любому справочнику или регистру.
В качестве источника выберите справочник «Сотрудники» или «Физические лица». Выведите поля «Наименование» (ФИО) и «Дата рождения». Сам возраст универсальный отчет не вычислит — но вы можете выгрузить даты рождения и рассчитать возраст в Excel формулой, либо добавить вычисляемое поле через расширенные настройки, если они доступны в вашей версии.
Этот способ удобен как промежуточный: сначала выгрузить список с датами рождения, затем в Excel применить формулу вида =РАЗНДАТ(A2;СЕГОДНЯ();"Y") (в русской локализации Excel — =DATEDIF может быть недоступна, используйте =ГОД(СЕГОДНЯ())-ГОД(A2) с поправкой на день рождения). Для разовой задачи это быстрее, чем настройка СКД.
Способ 3: настройка отчета на СКД с возрастными интервалами
Когда нужен не просто возраст каждого, а распределение по группам (например, «до 25», «25–35», «35–50», «старше 50»), потребуется настройка схемы компоновки данных. В ЗУП это можно сделать через изменение варианта типового отчета в режиме расширенных настроек.
Откройте настройки отчета, переключитесь в расширенный режим. На вкладке «Пользовательские поля» создайте поле выражения с выбором: если возраст меньше 25 — «до 25», если от 25 до 35 — «25–35» и так далее. Затем на вкладке «Структура» добавьте группировку по этому пользовательскому полю с ресурсом «Количество сотрудников».
Выражение для пользовательского поля строится на функции Выбор Когда ... Тогда ... Иначе ... Конец. Возраст внутри СКД вычисляется через разность дат: РазностьДата(&ТекущаяДата, ДатаРождения, "Год") — точный синтаксис зависит от того, как поле возраста реализовано в конкретной конфигурации, поэтому сначала посмотрите, как вычисляется штатное поле «Возраст» в запросе отчета.
Как проверить корректность данных перед отчетом
Главный источник ошибок в отчетах по возрасту — незаполненные или ошибочные даты рождения. В ЗУП есть штатная проверка: раздел «Кадры — Отчеты, справки — Остатки отпусков и кадровые сведения» либо отчет «Персональные данные сотрудников», где видно, у кого отсутствует дата рождения.
Сформируйте список сотрудников с пустой датой рождения через универсальный отчет с отбором «Дата рождения не заполнена». Заполните сведения в карточках физических лиц: «Кадры — Сотрудники» — открыть карточку — ссылка на физическое лицо — поле «Дата рождения».
Обратите внимание на дубли физических лиц: если один человек заведен дважды с разными датами рождения, отчет исказится. Для поиска дублей используйте обработку поиска и удаления дублей в разделе «Администрирование — Обслуживание».
Как проверить результат
Совпадает со списочной численностью на дату отчета
Отчет меньше — есть сотрудники без даты рождения или лишние отборы
У всех строк заполнены значения, нет нулей и пустых ячеек
Пустые значения или возраст 0 — дата рождения не введена
Сумма групп равна общему числу сотрудников
Часть сотрудников не попала ни в одну группу — проверьте границы интервалов
Типичные ошибки и ограничения
Частая ошибка — отбор по подразделению на дату, отличную от даты формирования. Если сотрудник переведен между подразделениями, отчет может задвоить или потерять его. Всегда фиксируйте дату среза в настройках отчета.
Вторая ошибка — использование кэшированного варианта отчета. Если вы сохранили вариант с отбором по конкретной организации, а потом формируете его для другой — данные будут неполными. Проверяйте отборы перед формированием.
Ограничение типовых средств: без доработки сложно получить возраст на произвольную дату в прошлом и сложные аналитические срезы (средний возраст по подразделениям с динамикой). Для таких задач подключают консоль отчетов СКД или разработчика.
Когда обращаться к разработчику
Если нужен отчет с динамикой возрастной структуры по периодам, расчетом среднего возраста, возраста на дату приема или увольнения — это задача для доработки. Разработчик создаст внешний отчет на СКД с запросом к регистрам кадровых данных, который можно подключить через «Дополнительные отчеты и обработки» без изменения конфигурации.
Перед постановкой задачи сформулируйте требования: на какую дату считается возраст, какие интервалы нужны, по каким измерениям строить группировки (подразделение, должность, пол), нужна ли детализация до сотрудника. Готовый макет в Excel с примером желаемого результата заметно ускорит разработку.
Что важно запомнить
Отчет по возрасту в 1С строится через типовые кадровые отчеты с добавлением поля «Возраст», универсальный отчет или настройку СКД с пользовательскими полями для интервалов. Качество отчета полностью зависит от заполненности дат рождения у физических лиц — проверяйте данные до формирования.
Частые вопросы
Можно ли получить возраст сотрудников на дату в прошлом без доработки?
Штатные поля «Возраст» считаются от текущей даты. Для возраста на историческую дату нужен отчет с вычисляемым полем, где разность дат считается от заданного параметра. Это делается через расширенные настройки СКД или внешний отчет.
Почему в отчете у части сотрудников возраст пустой?
Причина почти всегда одна — не заполнена дата рождения в карточке физического лица. Сформируйте список сотрудников с пустой датой рождения через универсальный отчет и внесите сведения.
Как посчитать средний возраст по подразделению?
В настройках отчета на СКД добавьте группировку «Подразделение», а в ресурсы — поле «Возраст» с агрегатной функцией «Среднее». Если типовое поле не поддерживает агрегацию, потребуется вычисляемое поле или внешний отчет.
Можно ли выгрузить отчет по возрасту в Excel?
Да, любой табличный отчет в 1С сохраняется через «Файл — Сохранить» или кнопку сохранения табличного документа в формате xlsx. Формулы и группировки при этом превращаются в статические значения.
Что делать, если один человек заведен дважды с разными датами рождения?
Используйте обработку «Поиск и удаление дублей» в разделе «Администрирование — Обслуживание». После объединения дублей перепроверьте кадровые документы, привязанные к удаляемой карточке.