Как разработать отчет для проверки выплат пособий ФСС (СФР) по уходу за ребенком до 1,5 лет в 1С:ЗУП 8.3

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Разработка отчета для проверки корректности начисления пособий по уходу за ребенком — это комплексная задача, требующая понимания механизмов расчета зарплаты, работы с регистрами сведений и накопления в конфигурации 1С:Зарплата и управление персоналом 8. В данной статье мы подробно разберем, какие данные и из каких регистров необходимо извлечь, как реализовать сложные условия отбора и на что обратить внимание при анализе документов исправления.

Основные источники данных для отчета

Для того чтобы отчет был достоверным, недостаточно анализировать только документ Отпуск по уходу за ребенком. Нам необходимо собрать данные из нескольких регистров, чтобы сопоставить плановые назначения с фактическими выплатами и текущим статусом сотрудника. Рассмотрим ключевые регистры, которые станут источниками данных для нашей системы компоновки данных (СКД):

  1. Регистр сведений "Плановые начисления". Здесь фиксируется информация о назначенных пособиях: их вид, размер и период действия. При построении запроса крайне важно учитывать, что регистратором могут выступать не только первичные документы, но и документы Изменение условий оплаты отпуска по уходу за ребенком или Возврат из отпуска по уходу. Рекомендуется использовать срез последних на каждую дату периода для отслеживания изменений условий в середине месяца.
  2. Регистр накопления "Начисления удержания по сотрудникам". Это основной источник фактических данных. Из него мы получаем суммы, которые реально были начислены сотруднику в выбранном периоде. Именно здесь мы будем искать "хвосты" — начисления за прошлые периоды или корректировки.
  3. Регистр сведений "Состояния сотрудников". Позволяет определить фактический статус сотрудника в организации. Это необходимо для фильтрации данных, чтобы понимать, действительно ли сотрудник числился в отпуске по уходу в конкретный день.
  4. План видов расчета (ПВР) "Начисления". Нам потребуется обращаться к свойствам начислений, чтобы программно определить, относится ли конкретное начисление к оплате за работу (например, по окладу) или к пособию.

Реализация логики: Начисление за два и более месяца

Один из наиболее спорных моментов — это проверка условия, при котором начисление выполнено за два и более месяца. Разберем, что это означает с точки зрения механизмов 1С. В системе разделяются понятия Период регистрации (месяц, в котором была введена запись) и Период действия (период, за который начислены деньги).

Проанализируем ситуацию: если в марте сотруднику начисляется пособие за январь, февраль и март (например, из-за задержки в оформлении документов), то в регистре Начисления удержания по сотрудникам появятся три строки с одним периодом регистрации (март), но разными интервалами дат в полях ДатаНачала и ДатаОкончания.

Для реализации этого условия в отчете мы должны выполнить следующие шаги:

  1. Сгруппировать данные по сотруднику и периоду регистрации.
  2. Рассчитать количество различных месяцев, входящих в интервалы ПериодДействияНачало — ПериодДействияКонец.
  3. Если количество месяцев больше или равно 2, такая строка должна быть выделена в отчете.

Пример логики запроса для проверки таких периодов:


ВЫБРАТЬ
    Начисления.Сотрудник,
    Начисления.Регистратор,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ НАЧАЛОПЕРИОДА(Начисления.ДатаНачала, МЕСЯЦ)) КАК КолВоМесяцев
ИЗ
    РегистрНакопления.НачисленияУдержанияПоСотрудникам КАК Начисления
ГДЕ
    Начисления.Период МЕЖДУ &НачалоПериода И &КонецПериода
СГРУППИРОВАТЬ ПО
    Начисления.Сотрудник,
    Начисления.Регистратор
ИМЕЮЩИЕ
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ НАЧАЛОПЕРИОДА(Начисления.ДатаНачала, МЕСЯЦ)) >= 2

Проверка совмещения работы и пособия

Согласно законодательству (с учетом изменений 2024 года и правил прошлых лет), важно отслеживать случаи, когда сотрудник получает пособие и одновременно работает на полную ставку. Проанализируем, как это выявить технически. Нам необходимо найти пересечение во времени двух видов начислений: "Пособие по уходу за ребенком" и любого начисления, связанного с отработкой полной нормы времени (Оклад, Тариф и т.д.).

Выясним причину, по которой это важно: если в виде начисления (ПВР) в настройках учета времени стоит значение За работу полную смену в пределах нормы времени (код времени "Явка"), и при этом за этот же период начислено пособие, это может быть нарушением или требовать особого внимания проверяющих органов.

Для этого в СКД рекомендуется использовать Левое соединение регистра начислений с самим собой. В левой части мы выбираем записи с пособием, в правой — записи с основными начислениями, соединяя их по сотруднику и периоду. В условиях соединения проверяем, чтобы даты начала и окончания периодов действия пересекались.

Учет документов исправления и сторнирования

Рассмотрим подробнее работу с исправлениями. В 1С:ЗУП реализован механизм сторнирования. Если расчетчик обнаружил ошибку и создал документ-исправление, старые записи не удаляются, а перекрываются новыми с отрицательными суммами.

Чтобы отчет корректно отображал финальные суммы, мы должны:

Оптимизация с использованием виртуальных таблиц

Посмотрим на пример правильного построения структуры запроса для повышения производительности. Вместо прямого обращения к таблице регистра накопления НачисленияУдержанияПоСотрудникам, эффективнее использовать виртуальную таблицу Обороты.


ВЫБРАТЬ
    НачисленияОбороты.Сотрудник КАК Сотрудник,
    НачисленияОбороты.Начисление КАК ВидНачисления,
    НачисленияОбороты.СуммаОборот КАК ФактическаяСумма,
    ПлановыеНачисленияСрезПоследних.Размер КАК ПлановаяСумма
ИЗ
    РегистрНакопления.НачисленияУдержанияПоСотрудникам.Обороты(&НачалоПериода, &КонецПериода, , ) КАК НачисленияОбороты
ЛЕВОЕ СОЕДИНЕНИЕ 
    РегистрСведений.ПлановыеНачисления.СрезПоследних(&КонецПериода, ) КАК ПлановыеНачисленияСрезПоследних
ПО 
    НачисленияОбороты.Сотрудник = ПлановыеНачисленияСрезПоследних.Сотрудник

Важный момент: СрезПоследних для плановых начислений лучше получать внутри цикла по месяцам или через соединение с таблицей периодов, если условия отпуска (например, размер пособия) менялись внутри выбранного интервала отчета.

Дополнительные проверки для СФР

Для полноты картины в отчет рекомендуется добавить следующие колонки:

  1. Дата достижения ребенком 1,5 лет. Рассчитывается на основании даты рождения ребенка, указанной в документе-основании. Если начисления продолжаются после этой даты — это ошибка.
  2. Статус прямых выплат. С тех пор как СФР перешел на прямые выплаты, необходимо проверять наличие в базе документов Сведения для расчета пособия и подтверждение их отправки. Это можно проверить через регистр сведений СтатусыВыплатыПособий (название может варьироваться в зависимости от версии ЗУП).
  3. Минимальный порог. Сравнение начисленной суммы с законодательно установленным минимумом на текущий год.

Используя предложенный алгоритм, мы создадим мощный инструмент для внутреннего аудита, который позволит минимизировать риски претензий со стороны контролирующих органов и обеспечит прозрачность расчетов с персоналом.

← На главную