В типовой конфигурации «1С:Зарплата и управление персоналом 3.1» (ЗУП) существует архитектурное ограничение при работе с удержаниями в счет расчетов по прочим операциям. В отличие от начислений, где мы можем гибко настроить «Способ отражения в бухучете», для удержаний программа использует жесткую привязку к справочнику «Виды операций по зарплате». Это приводит к тому, что такие разные по смыслу удержания, как квартплата, оплата за питание или займы, при выгрузке в «1С:Бухгалтерия предприятия 3.0» (БП) создают одинаковые проводки Дт 70 Кт 73.03.
В данной статье мы подробно разберем, как преодолеть это ограничение, проанализируем технические способы реализации разных проводок и выясним, какие изменения необходимо внести в систему.
Рассмотрим ситуацию: на предприятии используются удержания за услуги связи (счет 73), квартплату (счет 76.06) и погашение займов (счет 73.01). При заполнении документа «Отражение зарплаты в бухучете» в ЗУП 3.1 всем этим видам расчета автоматически присваивается вид операции «Удержание по прочим операциям с работниками».
При синхронизации с Бухгалтерией этот вид операции жестко транслируется в определенный счет кредита. Программа БП просто «не видит» разницы между названиями удержаний, ориентируясь только на перечисление ВидыОперацийПоЗарплате. В результате бухгалтеру приходится вручную корректировать счета в документе после каждой загрузки данных, что чревато ошибками и потерей правок при повторной синхронизации.
Это наиболее корректный технический путь с точки зрения программирования. Мы добавим новые значения в систему, чтобы программа могла их различать. Рассмотрим этот процесс по шагам.
Шаг 1. Создание расширения и изменение перечисления
Нам необходимо создать расширение (или использовать существующее) и добавить в него перечисление ВидыОперацийПоЗарплате. Добавим в это перечисление новое значение, например, УдержаниеКвартплаты. Важно помнить, что имена объектов (имя в конфигураторе) в ЗУП и БП должны быть идентичными, иначе синхронизация не сможет сопоставить данные.
Шаг 2. Разблокировка выбора в форме удержания
Проанализируем причину, по которой новые значения не появляются в списке выбора в настройках удержания. В ЗУП 3.1 список доступных операций фильтруется программно. Нам необходимо расширить функцию в модуле менеджера перечисления.
Разберем пример кода, который нужно добавить в модуль менеджера перечисления ВидыОперацийПоЗарплате через расширение:
&После("Удержания")
Функция Расш1_Удержания()
Результат = ПродолжитьВызов();
Результат.Добавить(ПредопределенноеЗначение("Перечисление.ВидыОперацийПоЗарплате.УдержаниеКвартплаты"));
Возврат Результат;
КонецФункции
После этого в настройках вида расчета (удержания) на вкладке «Бухучет» появится возможность выбрать созданный нами вид операции.
Шаг 3. Доработка на стороне «1С:Бухгалтерия предприятия»
Простого появления нового значения в списке синхронизации недостаточно. Бухгалтерия должна «узнать», какой счет соответствует этому виду операции. В БП проводки формируются исходя из алгоритмов модуля менеджера документа ОтражениеЗарплатыВБухучете. Вам потребуется в расширении БП переопределить логику формирования проводок, указав, что для операции УдержаниеКвартплаты должен подставляться счет 76.06.1.
Если вы не хотите вносить изменения в типовые конфигурации (что особенно актуально для базовых версий или при облачном использовании), можно воспользоваться методом «постобработки». Этот способ был предложен как наиболее простой и гибкий.
Алгоритм работы постобработки:
76.06.1 и пересчитывает итоги документа.Этот метод хорош тем, что он не мешает регулярным обновлениям программ, так как не меняет их структуру.
Разберем штатную возможность ЗУП 3.1, которую часто упускают. При создании нового удержания можно выбрать категорию «Удержание в пользу третьих лиц».
Особенности этого метода:
Важно помнить, что если бухгалтер просто исправит счет в документе «Отражение зарплаты в бухучете» без использования расширений или автоматизации, то при следующей синхронизации из ЗУП (например, при исправлении суммы) все ручные изменения будут затерты значениями по умолчанию.
Чтобы защитить данные, можно установить флаг «Ручная корректировка» в документе БП. Но проанализируем последствия: это «отвязывает» документ от автоматического обновления данных из ЗУП. Если в расчете зарплаты произойдут изменения, они не попадут в этот документ до снятия флага и перезаполнения.
Проанализировав все способы, мы рекомендуем следующее решение:
Выяснив причину жесткой привязки счетов к видам операций, мы можем сделать вывод, что гибкость настройки отражения удержаний в ЗУП 3.1 реализуется преимущественно через программные механизмы сопоставления объектов между двумя информационными базами.