При интеграции программ 1С:Зарплата и управление персоналом (ЗУП) и 1С:Бухгалтерия предприятия (БП) пользователи часто сталкиваются с тем, что в документе Отражение зарплаты в бухучете данные по налогам заполняются не полностью или некорректно. Одной из самых неприятных ситуаций является автоматическое очищение поля Регистрация в налоговом органе. Вы можете вручную выбрать нужную ИФНС, но после нажатия кнопки «Записать» поле снова становится пустым. Разберем детально, почему это происходит и как решить проблему.
Для начала проанализируем, как программа понимает, какую именно налоговую инспекцию нужно подставить в документ. Важно понимать, что при синхронизации из ЗУП в БП не передается прямая ссылка на элемент справочника РегистрацииВНалоговыхОрганах. Вместо этого передаются строковые значения реквизитов:
Когда документ открывается или записывается в Бухгалтерии, срабатывает внутренний алгоритм сопоставления. Программа берет эти строковые данные и ищет в справочнике Регистрации в налоговых органах запись, у которой КПП и ОКТМО полностью совпадают с переданными из ЗУП. Если система находит точное соответствие — поле заполняется. Если соответствие не найдено или найдено несколько неоднозначных записей — поле очищается.
Выясним причину, по которой это поле «слетало» в конкретных версиях программы (например, в релизе 3.0.60.46). В данном релизе была допущена программная ошибка в типовой процедуре ЗаполнитьРегистрацииВНалоговомОргане. При записи документа система выполняла проверку данных, но из-за некорректного запроса к регистру сведений История регистраций в налоговом органе, она «теряла» связь с обособленными подразделениями.
Проанализируем ситуацию: если у вас есть головная организация и несколько обособленных подразделений, каждое из которых сдает отчетность в свою налоговую, программа должна четко различать их по комбинации КПП + ОКТМО. В ошибочном релизе алгоритм игнорировал уникальность этих пар для подразделений и пытался привязать все строки документа к основной регистрации головной организации. Если данные в строке не совпадали с данными «головы», поле принудительно очищалось программным кодом перед записью в базу данных.
Рассмотрим способы исправления данной ситуации, начиная с самых простых и эффективных.
Способ 1. Обновление конфигурации
Как показывает практика и обсуждения на форумах, данная проблема была признана разработчиками 1С и исправлена. Если вы работаете на релизе 3.0.60.46 или аналогичном, необходимо обновить информационную базу до версии 3.0.60.50 или выше. В новых патчах алгоритм поиска регистрации был пересмотрен и исправлен.
Способ 2. Проверка регистра «История регистраций в налоговом органе»
Если обновление по каким-то причинам невозможно или не помогло, проанализируем данные в регистрах. Программа ищет регистрацию не только по кодам, но и по дате. Выясним, актуальна ли запись в регистре:
Отражение зарплаты в бухучете. Если дата регистрации в истории стоит, например, 01.01.2024, а документ вы пытаетесь провести за декабрь 2023 года, поле будет очищаться.Способ 3. Сопоставление подразделений
Разберем нюанс с обособленными подразделениями. Если зарплата в ЗУП рассчитывается по филиалам, в Бухгалтерии эти подразделения также должны быть заведены соответствующим образом:
Подразделения для филиала должен стоять флаг «Обособленное подразделение».Регистрация в налоговом органе.Для программистов и опытных пользователей рассмотрим, как проверить, какие данные на самом деле пришли из ЗУП. В документе Отражение зарплаты в бухучете многие реквизиты скрыты от глаз пользователя. Чтобы их увидеть, выполним следующие действия:
КПП и ОКТМО (они могут называться КПП (регистрация) и ОКТМО (регистрация)) и установим для них флажки видимости.После этого мы сможем увидеть «сырые» данные. Если эти колонки в документе пустые, значит, проблема в настройках синхронизации или в самих данных на стороне ЗУП. Если же данные есть, но ссылка на налоговую не проставляется — проблема в БП (в справочнике регистраций или версии конфигурации).
Посмотрим на упрощенный пример того, как система должна искать регистрацию. Это поможет понять, почему ручной ввод не всегда спасает:
// При записи документа срабатывает проверка:
Для Каждого Строка Из ТЧ_НДФЛ Цикл
НайденнаяРегистрация = Справочники.РегистрацииВНалоговыхОрганах.НайтиПоРеквизитам(
Строка.КПП,
Строка.ОКТМО,
Объект.Организация
);
// Если пользователь выбрал вручную, но коды в строке не совпадают с кодами в ИФНС
Если Строка.РегистрацияВНалоговомОргане <> НайденнаяРегистрация Тогда
// Типовой алгоритм в ошибочном релизе мог принудительно очищать поле
Строка.РегистрацияВНалоговомОргане = НайденнаяРегистрация;
КонецЕсли;
КонецЦикла;
Важный итог: если вы столкнулись с этой проблемой, первым делом проверьте соответствие КПП и ОКТМО в карточке организации в БП и в документе (через изменение формы). Если коды совпадают, но поле очищается — обновляйте конфигурацию до актуального релиза. Это сэкономит время и избавит от необходимости вносить правки в типовой код.