При ведении учета заработной платы часто возникает ситуация, когда сотрудник в течение одного месяца выполняет работы по разным направлениям, проектам или договорам. В результате затраты на оплату его труда необходимо списать на разные счета учета или субконто (например, на различные номенклатурные группы счетов затрат 20, 25 или 26).
Рассмотрим типовую проблему: у сотрудника установлен месячный оклад (например, 55 000 рублей). В текущем месяце из 22 рабочих дней он 10 дней работал по Договору № 123 и 12 дней — по Договору № 456. В следующем месяце пропорция меняется (например, 7 и 15 дней). В программе 1С:Зарплата и управление персоналом 3.1 необходимо отразить начисление заработка так, чтобы сумма оклада, страховые взносы и НДФЛ автоматически распределились между способами отражения в бухучете пропорционально фактически отработанным дням.
Проанализируем доступные способы решения этой задачи в типовой конфигурации и разберем наиболее удобные механизмы.
Среди пользователей бытует заблуждение, что документ Распределение основного заработка требует ввода строго фиксированных процентов или долей, которые приходится рассчитывать вручную (например, вычислять пропорцию 10/22 и 12/22). На самом деле алгоритм 1С позволяет указывать в документе абсолютные значения — количество дней или часов.
Разберем по шагам, как настроить такое распределение:
Дт 25 Кт 70 (Номенклатурная группа Договор № 123) и Дт 25 Кт 70 (Номенклатурная группа Договор № 456)).10 и 12.При расчете заработной платы в документе Начисление зарплаты и взносов и последующем формировании документа Отражение зарплаты в бухучете программа автоматически сложит указанные доли (10 + 12 = 22) и пересчитает начисление пропорционально введенным значениям.
Важные особенности данного метода:
— Распределение распространяется на весь основной заработок сотрудника и связанные с ним начисления за текущий месяц.
— Исчисленные страховые взносы и НДФЛ также автоматически распределяются по выбранным способам отражения пропорционально заданным долям.
— Документ можно заполнять сразу на группу сотрудников с помощью кнопок Заполнить или Подбор.
Если работа по разным договорам или объектам носит обособленный характер и повторяется из месяца в месяц, разберем альтернативный кадрово-табельный вариант через механизм территорий:
Табель учета рабочего времени или Перемещение между территориями.При расчете зарплаты программа сама определит, сколько дней отработано на каждой территории, и автоматически разобьет оклад и взносы по разным способам отражения без необходимости создавать документ Распределение основного заработка.
В случаях, когда оплата привязана к конкретным объемам или проектам, проанализируем сдельную оплату труда:
Сдельный заработок на выполненные работы (или Данные для расчета зарплаты).При переходе с версии 1С:ЗУП 2.5 на 1С:ЗУП 3.1 пользователи часто пытаются дорабатывать непосредственно документ Отражение зарплаты в бухучете. В архитектуре ЗУП 3.1 делать это не рекомендуется, так как это приводит к расхождениям при расчете страховых взносов, НДФЛ и синхронизации с 1С:Бухгалтерией 3.0.
Если ручной ввод отработанных дней в документ Распределение основного заработка кажется пользователям слишком трудоемким, правильным архитектурным решением будет разработка **внешней обработки заполнения** или **расширения конфигурации**.
Схема работы автоматизации выглядит следующим образом:
Распределение основного заработка на всех необходимых сотрудников.Отражение зарплаты в бухучете выполняются полностью в штатном типовом режиме.Пример программного создания и заполнения документа Распределение основного заработка через код 1С:
ДокументОбъект = Документы.РаспределениеОсновногоЗаработка.СоздатьДокумент();
ДокументОбъект.Дата = ТекущаяДата();
ДокументОбъект.Организация = ОрганизацияСсылка;
ДокументОбъект.ПериодРегистрации = НачалоМесяца(Период);
// Заполнение строки по сотруднику
НоваяСтрока = ДокументОбъект.УчетОсновногоЗаработкаЗаказчиков.Добавить();
НоваяСтрока.Сотрудник = СотрудникСсылка;
НоваяСтрока.СпособОтражения = СпособОтраженияДоговор123;
НоваяСтрока.ДоляРаспределения = 10; // Дни по договору 123
НоваяСтрока2 = ДокументОбъект.УчетОсновногоЗаработкаЗаказчиков.Добавить();
НоваяСтрока2.Сотрудник = СотрудникСсылка;
НоваяСтрока2.СпособОтражения = СпособОтраженияДоговор456;
НоваяСтрока2.ДоляРаспределения = 12; // Дни по договору 456
ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
Для решения задачи по разбивке основного начисления пропорционально отработанным дням в 1С:ЗУП 3.1 оптимально использовать типовой документ Распределение основного заработка. Главный плюс метода — отсутствие необходимости предварительного вычисления процентов: в поле Доля распределения подставляются напрямую дни или часы. При высоком объеме данных этот процесс легко поддается автоматизации с помощью внешних обработок заполнения без изменения типовой конфигурации.