Как организовать проверку ведомости на аванс в 1С:ЗУП 3.1 при ручном заполнении

Бухгалтер 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом
← На главную

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

Метод 1. Использование документа «Начисление за первую половину месяца» как фильтра

Самый надежный способ проверить «ручной» список — сопоставить его с данными, которые видит сама система. Даже если вы не планируете использовать расчетный метод аванса на постоянной основе, документ НачислениеЗаПервуюПоловинуМесяца может послужить отличным инструментом аудита. Рассмотрим алгоритм действий:

  1. Создадим временный документ Начисление за первую половину месяца за нужный период.
  2. Нажмем кнопку Заполнить. В этот момент программа автоматически проанализирует графики работы сотрудников и все введенные в систему отклонения (отпуска, больничные, отгулы, неявки).
  3. Сравним полученный список сотрудников с тем, который предоставил начальник подразделения. Если сотрудника нет в документе начисления, значит, по данным 1С, у него нет фактически отработанного времени в первой половине месяца.

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

Метод 2. Проверка через регистр сведений «Состояния сотрудников»

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

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


// Пример логики для проверки наличия отклонений
Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |	СостоянияСотрудников.Сотрудник КАК Сотрудник,
    |	СостоянияСотрудников.Состояние КАК Состояние,
    |	СостоянияСотрудников.ПериодЗавершения КАК ДатаОкончания
    |ИЗ
    |	РегистрСведений.СостоянияСотрудников КАК СостоянияСотрудников
    |ГДЕ
    |	СостоянияСотрудников.Сотрудник В(&СписокСотрудников)
    |	И СостоянияСотрудников.Состояние <> ЗНАЧЕНИЕ(Перечисление.СостоянияСотрудника.Работа)";

Выясним причину, по которой этот регистр является приоритетным: в отличие от регистра Данные состояний сотрудников, информация в СостоянияСотрудников консолидирует все виды неявок. Если на дату выплаты аванса (например, 15-е число) у сотрудника в этом регистре стоит состояние, отличное от «Работа», это сигнал к тому, что его включение в ведомость требует дополнительной проверки.

Метод 3. Создание внешней обработки проверки «на вшивость»

Если вы хотите оставить процесс заполнения ведомостей «ручным», но при этом исключить ошибки, можно разработать внешнюю обработку заполнения табличной части. Она будет работать следующим образом:

  1. Бухгалтер загружает или вводит список сотрудников в ведомость.
  2. Нажимает кнопку Проверить ведомость (добавленную через механизм дополнительных отчетов и обработок).
  3. Обработка пробегает по строкам табличной части Состав и для каждого сотрудника проверяет наличие записей в регистрах отклонений за период с 1-го по 15-е число.
  4. Строки с «подозрительными» сотрудниками (теми, кто был в отпуске или болел) выделяются цветом или помечаются в специальном логе сообщений.

Такой подход позволяет сохранить привычный бизнес-процесс, добавив в него жесткий автоматизированный контроль.

Метод 4. Настройка универсального отчета для сверки

Если нет возможности привлекать программиста, воспользуемся штатным инструментом Универсальный отчет. Рассмотрим подробнее, как его настроить для наших целей:

  1. Перейдем в раздел Администрирование — Печатные формы, отчеты и обработки — Универсальный отчет.
  2. Выберем тип объекта Регистр сведений, имя объекта — Состояния сотрудников.
  3. В настройках отчета (кнопка «Настройки») добавим фильтр по периоду (первая половина текущего месяца) и установим отбор: Состояние НЕ РАВНО Работа.
  4. Сформируем отчет. Полученный список — это «черный список» для аванса. Если человек есть в этом отчете, его не должно быть в вашей ведомости на аванс.

Важные правовые и технические нюансы

Проанализируем условие, упомянутое в обсуждении: «аванс выплачивается только тем, кто отработал первую половину месяца полностью». Важно помнить: с точки зрения статьи 136 ТК РФ и актуальных писем Минтруда, выплата аванса (заработной платы за первую половину месяца) должна производиться за фактически отработанное время.

Если сотрудник отработал 10 дней из 11, а 1 день был в отгуле, вы обязаны выплатить ему зарплату за эти 10 дней. Лишение аванса целиком из-за одного дня пропуска является нарушением законодательства. Однако, если ваша учетная политика непоколебима, вышеописанные технические методы позволят вам реализовать этот алгоритм максимально точно.

Посмотрим на ситуацию с «забытыми» сотрудниками. Чтобы программа видела тех, кто вернулся из длительных отпусков или декретов, необходимо убедиться, что в системе оформлены документы Возврат из отпуска по уходу или правильно закрыты больничные листы. Если кадровый учет ведется оперативно, стандартная кнопка Заполнить в ведомости (при установленном способе выплаты аванса «Расчетом за первую половину месяца») всегда подтянет актуальный состав работающих сотрудников.

Подводя итог, наиболее эффективным решением будет постепенный отход от «бумажных списков» начальников подразделений в пользу оперативного ввода данных о неявках в 1С. В этом случае проверка ведомости превращается в простую формальность, выполняемую нажатием одной кнопки.

← На главную