Почему при переносе документа "Начисление зарплаты" из ЗУП в Бухгалтерию не загружается табличная часть?

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

Часто при настройке нестандартного обмена между "1С:Зарплата и управление персоналом" (ЗУП) и "1С:Бухгалтерия предприятия" (БП) возникает задача перенести документ Начисление зарплаты и взносов целиком. Однако после создания правил обмена и выполнения выгрузки оказывается, что документ в базе-приемнике создался, но все его табличные части (начисления, удержания, взносы) пусты. Разберем, почему так происходит и как это исправить. Также проанализируем, почему такой перенос в принципе не рекомендуется и какой механизм является стандартным.

Технические причины проблемы и способы их решения

Основная причина, по которой табличная часть документа не переносится, заключается в неполной настройке правил обмена в конфигурации "Конвертация данных". Создания правила конвертации для самого объекта (документа) недостаточно. Необходимо детально настроить правила для каждой табличной части и её колонок. Рассмотрим по шагам, что нужно проверить.

  1. Отсутствуют правила конвертации свойств (ПКС) для табличной части.

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

    Что делать:

    • Откройте ваше ПКО для документа НачислениеЗарплатыИВзносов.
    • На вкладке "Конвертация свойств" найдите строки, соответствующие табличным частям (например, "Начисления"). Убедитесь, что для них указано правило конвертации.
    • Перейдите в это правило (это будет ПКО для самой табличной части). Внутри него должны быть созданы правила конвертации свойств (ПКС) для каждой колонки, которую вы хотите перенести: "Сотрудник", "Результат", "Вид начисления" и т.д. Если для колонок нет правил, система просто не знает, какие данные из них выгружать.
  2. Несоответствие типов данных и отсутствие правил конвертации значений.

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

    Что делать:

    • Для таких "несопоставимых" реквизитов нужно создавать отдельные правила. Например, для справочников настроить поиск в базе-приемнике по определенному полю (ИНН, наименованию или другому уникальному идентификатору).
    • Если прямой поиск невозможен, используйте обработчики событий, например, Перед выгрузкой для поля, чтобы программно определить соответствующее значение в базе-приемнике.
  3. Не настроена выгрузка объектов по ссылке.

    В табличной части содержатся ссылки на другие объекты: Сотрудники, Подразделения. Если эти объекты еще не были перенесены в Бухгалтерию, их нужно выгрузить вместе с документом. Для этого в правилах конвертации для этих объектов (например, для справочника Сотрудники) должна стоять галочка "Выгружать по ссылке".

  4. Ошибки в программном коде обработчиков.

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

Почему прямой перенос "Начисления зарплаты" — плохая идея?

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

Стандартный механизм: документ "Отражение зарплаты в бухучете"

Для обмена между ЗУП и БП предназначен специальный документ — Отражение зарплаты в бухучете. Он не содержит детальной информации по каждому сотруднику и виду расчета, а агрегирует итоговые суммы в разрезе способов отражения, которые и нужны для формирования бухгалтерских проводок. Это сводный документ, который передает в БП только ту информацию, которая необходима для бухгалтерского учета.

Аргументы против переноса Начисления зарплаты:

Итоги и рекомендации

Итак, если перед вами стоит задача исправить неработающий перенос документа Начисление зарплаты, в первую очередь проверьте правила конвертации для табличных частей и всех их колонок в "Конвертации данных". Это наиболее вероятное место ошибки.

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

← На главную