Как правильно настроить обмен данными между ЗУП 3.1 и УПП 1.3: документы, аналитика и подводные камни?

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

Переход на новые редакции зарплатных конфигураций при сохранении исторической учетной системы (включая перенос данных из УПП в ЗУП 3.1) — распространенная задача. Ситуация, когда кадровый учет и расчет зарплаты ведутся в современной 1С:Зарплата и Управление Персоналом 3.1 (ЗУП 3), а производственный и регламентированный учет остается в 1С:Управление производственным предприятием 1.3 (УПП), встречается часто. Однако, "из коробки" прямого обмена между этими конфигурациями не существует, а различия в архитектуре создают серьезные методологические ловушки.

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

Главная методологическая ошибка: выбор документа-приемника

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

Почему документ "Начисление..." не подходит:

  1. Дублирование расчетов. Документ начисления в УПП — это не просто фиксация суммы, это инструмент расчета. При проведении система попытается пересчитать НДФЛ, страховые взносы и удержания по алгоритмам УПП 1.3. Поскольку формулы, настройки видов расчета и законодательные базы в ЗУП 3.1 и УПП 1.3 могут отличаться (и, скорее всего, отличаются), вы получите расхождения в копейках или даже рублях.
  2. Избыточность данных. Для переноса документа начисления вам потребуется синхронизировать огромное количество вспомогательных данных: графики работы, показатели эффективности, табели учета рабочего времени, невыходы и т.д.
  3. Сложность поддержки. Любое изменение в заднем числе в ЗУП потребует сложной логики перезаполнения документа в УПП (иногда ситуацию спасает ручное редактирование движений в регистрах документа переноса).

Правильное решение:

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

Схема обмена должна выглядеть так:

Проблема сопоставления аналитики затрат

Наиболее сложная часть задачи — корректное отражение затрат на производство (счета 20, 23, 25, 26). Структура аналитики в ЗУП 3 и УПП 1.3 кардинально отличается.

В УПП для прямых затрат (счет 20) критически важно заполнение справочника НоменклатурныеГруппы. Без этого невозможно корректно рассчитать себестоимость выпущенной продукции. В ЗУП 3 справочника "Номенклатурные группы" попросту нет.

Рассмотрим подробно варианты решения этой проблемы через настройку правил конвертации данных (КД 2.0).

Способ 1: Использование дополнительных реквизитов в ЗУП

В ЗУП 3 мы используем справочник СпособыОтраженияЗарплатыВБухучете. Чтобы передать информацию о номенклатурной группе, выполним следующие действия:

  1. В ЗУП добавляем дополнительный реквизит к справочнику способов отражения (или подразделений, если учет идет по ним). Назовем его "НоменклатурнаяГруппаУПП" (тип — Строка).
  2. Бухгалтеры в ЗУП заполняют этот реквизит, указывая точное наименование номенклатурной группы из УПП.
  3. В правилах обмена (в КД 2.0) при выгрузке свойства для Субконто счета затрат прописываем алгоритм поиска:

// Пример алгоритма в ПКО (Правила конвертации объектов)
// При выгрузке свойства НоменклатурнаяГруппа
Если ЗначениеЗаполнено(Источник.ДополнительныйРеквизитНГ) Тогда
    Значение = Источник.ДополнительныйРеквизитНГ; // Передаем строку
Иначе
    Значение = "Основная номенклатурная группа"; // Значение по умолчанию
КонецЕсли;

В правилах конвертации свойств (ПКС) на стороне приемника (УПП) настраиваем поиск элемента справочника НоменклатурныеГруппы по наименованию. Это позволит системе найти нужную аналитику.

Способ 2: Жесткое соответствие наименований (Маппинг)

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

Назовем элементы справочника СпособыОтраженияЗарплатыВБухучете в ЗУП так, чтобы они однозначно идентифицировали аналитику УПП. Например: "Сч.20_Цех1_Мебель".

В правилах обмена (КД 2.0) пропишем логику парсинга имени или таблицу соответствий:


// Пример кода в обработчике "ПередВыгрузкой"
Если Найти(Источник.Наименование, "Цех1") > 0 Тогда
    ИсходящиеДанные.Вставить("СчетЗатрат", "20.01.1");
    ИсходящиеДанные.Вставить("НоменклатурнаяГруппа", "Мебель");
ИначеЕсли Найти(Источник.Наименование, "Администрация") > 0 Тогда
    ИсходящиеДанные.Вставить("СчетЗатрат", "26");
КонецЕсли;

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

Синхронизация физических лиц и сотрудников

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

Вариант А: Сводная выгрузка

В этом случае документ ОтражениеЗарплатыВРеглУчете в УПП заполняется без указания сотрудников на счете 70. Все суммы "сворачиваются" до аналитики затрат.

Плюсы:

Минусы:

Вариант Б: Детализация по сотрудникам

Если требуется видеть задолженность по каждому человеку в УПП, необходимо настроить синхронизацию справочника ФизическиеЛица.

Важный нюанс: Уникальные идентификаторы (GUID) в ЗУП 3 и УПП 1.3 почти наверняка не совпадут, если базы велись независимо. Синхронизацию следует настраивать по полям поиска.

Рекомендуемый алгоритм поиска в КД 2.0:

  1. СНИЛС. Это самый надежный уникальный идентификатор.
  2. Если СНИЛС не заполнен — ФИО + Дата рождения.

// Пример настройки полей поиска в КД 2.0 для справочника ФизическиеЛица
// Устанавливаем флаг "Поиск" напротив СтраховойНомерПФР (СНИЛС)
// И дополнительно напротив Наименование + ДатаРождения

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

Особенности работы с документом "Отражение зарплаты в регл. учете"

При заполнении документа-приемника в УПП необходимо учитывать структуру его табличных частей. Основная вкладка, которая нас интересует — это "Проводки" (или "Отражение в учете").

Однако, в ЗУП 3.1 документ отражения содержит уже распределенные налоги и взносы. В УПП документ отражения также имеет логику формирования движений по регистрам накопления для целей НДС и затрат.

Проблема копеек (Округление):
При распределении страховых взносов по счетам затрат в ЗУП 3.1 могут возникать погрешности округления. При переносе этих сумм в УПП, сумма проводок по Дт и Кт может не сойтись на 1-2 копейки. УПП при проведении документа жестко контролирует баланс.

Решение: В правилах конвертации (в событии ПослеЗагрузки) необходимо добавить алгоритм, который проверяет сходимость баланса документа. Разницу следует относить либо на счет 91, либо "докидывать" на самую крупную статью затрат (например, на 26 счет).

Альтернативный технический подход (без КД 2.0)

Если разработка правил обмена в "Конвертации данных" кажется избыточной или слишком сложной, существует "олдскульный" метод, который часто применялся для УПП — обмен через внешние файлы (Excel/DBF/XML своей структуры).

Алгоритм действий:

  1. В ЗУП 3 пишем внешний отчет или обработку, которая собирает данные из проводок документа ОтражениеЗарплатыВБухучете.
  2. Обработка группирует данные по счетам дебета, кредита и субконто (строковым представлениям).
  3. Данные выгружаются в Excel файл простого формата: СчетДт | СубконтоДт1 | ... | СчетКт | СубконтоКт1 | Сумма.
  4. В УПП создается простая обработка "Загрузка проводок", которая читает Excel и создает документ ОперацияБух или заполняет ОтражениеЗарплатыВРеглУчете.
  5. При загрузке обработка ищет аналитику (Номенклатурные группы, Статьи затрат) по наименованию из Excel. Если не находит — создает объект или пишет в лог ошибок.

Этот метод часто оказывается более гибким и прозрачным для отладки, чем сложные правила XML-обмена, особенно если поддержка осуществляется силами штатного программиста, не являющегося экспертом в КД.

Резюме

Подытожим основные шаги для успешной реализации обмена ЗУП 3 -> УПП 1.3:

  1. Откажитесь от идеи переносить документы начисления. Используйте только документы отражения (проводки).
  2. Определитесь с детализацией: сводно или по сотрудникам. Сводный вариант предпочтительнее для стабильности УПП.
  3. Разработайте методику сопоставления аналитики (через доп. реквизиты в ЗУП или строгие правила именования).
  4. Если используете КД 2.0, настройте поиск физлиц по СНИЛС.
  5. Обязательно предусмотрите механизм корректировки копеек при округлении, чтобы документы в УПП проводились автоматически.

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

← На главную