Куда в 1С:ЗУП 3 записываются данные для расчета среднего заработка при ручном вводе в документе Отпуск?

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

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

В какие регистры записываются ручные корректировки среднего заработка

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

  1. Сведения о начислениях: данные записываются в независимый регистр сведений СведенияОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.
  2. Сведения об отработанном времени: дни и часы за фиксируются в независимом регистре сведений СведенияОВремениДляРасчетаСреднегоОбщий.

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

Почему данные остаются после удаления документа Отпуск

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

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

Влияние настроек на учет среднего для пособий и ФСС

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

Поведение системы зависит от этой настройки:

  1. Если флаг не установлен, ручные данные попадут только в общий расчет (для отпусков и командировок). Для больничных листов средний рассчитывается по отдельным правилам, ограниченным предельной базой.
  2. Если флаг установлен, при записи ручных данных система синхронно отражает корректировки также в регистре сведений СведенияОНачисленияхДляРасчетаСреднегоЗаработкаФСС, проставляя специальный служебный флаг Данные из учета среднего общий, а в общем регистре — флаг Данные из учета среднего ФСС.

Зачем нужен регистр накопления и как расставляются приоритеты

Выясним назначение регистра накопления Данные о начислениях для расчета среднего заработка (общий). Этот регистр предназначен для регулярного автоматического учета. В него делают движения расчетные документы конфигурации (Начисление зарплаты и взносов, Премия, Разовое начисление), а также специализированный документ Перенос данных.

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

Как очистить или исправить зависшие ручные данные

Если фиктивный документ был удален, а некорректные данные среднего заработка продолжают попадать в новые документы, исправить ситуацию можно двумя путями:

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

Как правильно вносить начальные данные для расчета среднего

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

  1. Перейдем в раздел Администрирование — Переносы данных.
  2. Создадим новый документ и настроим состав регистров: выберем регистры накопления Данные о начислениях для расчета среднего заработка (общий) и Данные о времени для расчета среднего (общий).
  3. Заполним необходимые периоды, суммы и отработанные дни.

Внесенные таким образом сведения хранятся централизованно, привязаны к конкретному документу и легко поддаются групповой корректировке.

Как посмотреть средний заработок сотрудника за период

Рассмотрим варианты анализа среднего заработка без необходимости открывать каждый регистр вручную:

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

Программное получение среднего заработка

Если требуется разработать собственный отчет или обработку по расчету среднего заработка, используем типовую процедуру конфигурации из общего модуля УчетСреднегоЗаработка:


// Пример программного вызова функций подсистемы учета среднего
ДанныеДляРасчета = УчетСреднегоЗаработка.ДанныеДляРасчетаОбщегоСреднегоЗаработкаСотрудника(
    СсылкаНаСотрудника, 
    ДатаНачалаПериода, 
    ПараметрыРасчета
);

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

← На главную