Как настроить выгрузку различных удержаний из ЗУП 3 в Бухгалтерию на разные счета (73, 76 и др.)?

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

В типовой конфигурации «1С:Зарплата и управление персоналом 3.1» (ЗУП) существует архитектурное ограничение при работе с удержаниями в счет расчетов по прочим операциям. В отличие от начислений, где мы можем гибко настроить «Способ отражения в бухучете», для удержаний программа использует жесткую привязку к справочнику «Виды операций по зарплате». Это приводит к тому, что такие разные по смыслу удержания, как квартплата, оплата за питание или займы, при выгрузке в «1С:Бухгалтерия предприятия 3.0» (БП) создают одинаковые проводки Дт 70 Кт 73.03.

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

Анализ проблемы: почему удержания «сваливаются» на один счет

Рассмотрим ситуацию: на предприятии используются удержания за услуги связи (счет 73), квартплату (счет 76.06) и погашение займов (счет 73.01). При заполнении документа «Отражение зарплаты в бухучете» в ЗУП 3.1 всем этим видам расчета автоматически присваивается вид операции «Удержание по прочим операциям с работниками».

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

Способ 1. Использование расширения для добавления новых видов операций

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

Шаг 1. Создание расширения и изменение перечисления

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

Шаг 2. Разблокировка выбора в форме удержания

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

Разберем пример кода, который нужно добавить в модуль менеджера перечисления ВидыОперацийПоЗарплате через расширение:


&После("Удержания")
Функция Расш1_Удержания()
    Результат = ПродолжитьВызов();
    Результат.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.УдержаниеКвартплаты"));
    Возврат Результат;
КонецФункции

После этого в настройках вида расчета (удержания) на вкладке «Бухучет» появится возможность выбрать созданный нами вид операции.

Шаг 3. Доработка на стороне «1С:Бухгалтерия предприятия»

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

Способ 2. Постобработка данных (внешняя обработка)

Если вы не хотите вносить изменения в типовые конфигурации (что особенно актуально для базовых версий или при облачном использовании), можно воспользоваться методом «постобработки». Этот способ был предложен как наиболее простой и гибкий.

Алгоритм работы постобработки:

  1. Данные синхронизируются в стандартном режиме (все удержания попадают на 73.03).
  2. Бухгалтер запускает внешнюю обработку в 1С:БП.
  3. Обработка анализирует колонку «Вид расчета» (которая переносится из ЗУП как текстовое поле).
  4. При нахождении строки с названием «Квартплата» обработка программно меняет счет кредита на 76.06.1 и пересчитывает итоги документа.

Этот метод хорош тем, что он не мешает регулярным обновлениям программ, так как не меняет их структуру.

Способ 3. Настройка «Удержания в пользу третьих лиц»

Разберем штатную возможность ЗУП 3.1, которую часто упускают. При создании нового удержания можно выбрать категорию «Удержание в пользу третьих лиц».

Особенности этого метода:

Риски ручных правок и флаг «Ручная корректировка»

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

Чтобы защитить данные, можно установить флаг «Ручная корректировка» в документе БП. Но проанализируем последствия: это «отвязывает» документ от автоматического обновления данных из ЗУП. Если в расчете зарплаты произойдут изменения, они не попадут в этот документ до снятия флага и перезаполнения.

Выводы и рекомендации

Проанализировав все способы, мы рекомендуем следующее решение:

  1. Для крупных организаций: Оптимально использование расширений (Способ 1). Это делает работу системы прозрачной для пользователя — один раз настроили сопоставление видов операций, и счета будут подставляться автоматически всегда.
  2. Для небольших компаний: Использование внешней обработки (Способ 2) позволит избежать затрат на поддержку кастомного кода в конфигурациях и обеспечит чистоту обновлений.
  3. Для типовых случаев: Всегда проверяйте возможность использования категории «Удержание в пользу третьих лиц», так как это наиболее близкий к типовому функционал работы с 76 счетом.

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

← На главную