Переход на новые редакции зарплатных конфигураций при сохранении исторической учетной системы (включая перенос данных из УПП в ЗУП 3.1) — распространенная задача. Ситуация, когда кадровый учет и расчет зарплаты ведутся в современной 1С:Зарплата и Управление Персоналом 3.1 (ЗУП 3), а производственный и регламентированный учет остается в 1С:Управление производственным предприятием 1.3 (УПП), встречается часто. Однако, "из коробки" прямого обмена между этими конфигурациями не существует, а различия в архитектуре создают серьезные методологические ловушки.
В этой статье мы подробно разберем, как организовать этот процесс, каких ошибок следует избегать и как технически реализовать сопоставление аналитики, которой нет в одной из систем.
Первое, с чем сталкиваются разработчики — это желание перенести документ НачислениеЗарплаты из ЗУП в аналогичный документ НачислениеЗарплатыСотрудникамОрганизаций в УПП. На первый взгляд это кажется логичным: "мы начислили там, давайте начислим и тут". Однако, проанализировав сообщения экспертов и архитектуру УПП, мы увидим, почему этого делать нельзя.
Почему документ "Начисление..." не подходит:
Правильное решение:
Единственно верным подходом является использование ЗУП как "калькулятора", который отдает готовый финансовый результат. В УПП мы должны загружать эти данные как факт хозяйственной операции, не требующий пересчета.
Схема обмена должна выглядеть так:
ОтражениеЗарплатыВБухучете. Этот документ формируется в конце месяца и содержит итоговые суммы по проводкам (Дт Счет — Кт 70/69).ОтражениеЗарплатыВРеглУчете. Этот документ предназначен именно для формирования проводок в бухгалтерском и налоговом учете на основании уже рассчитанных данных.Наиболее сложная часть задачи — корректное отражение затрат на производство (счета 20, 23, 25, 26). Структура аналитики в ЗУП 3 и УПП 1.3 кардинально отличается.
В УПП для прямых затрат (счет 20) критически важно заполнение справочника НоменклатурныеГруппы. Без этого невозможно корректно рассчитать себестоимость выпущенной продукции. В ЗУП 3 справочника "Номенклатурные группы" попросту нет.
Рассмотрим подробно варианты решения этой проблемы через настройку правил конвертации данных (КД 2.0).
В ЗУП 3 мы используем справочник СпособыОтраженияЗарплатыВБухучете. Чтобы передать информацию о номенклатурной группе, выполним следующие действия:
Субконто счета затрат прописываем алгоритм поиска:
// Пример алгоритма в ПКО (Правила конвертации объектов)
// При выгрузке свойства НоменклатурнаяГруппа
Если ЗначениеЗаполнено(Источник.ДополнительныйРеквизитНГ) Тогда
Значение = Источник.ДополнительныйРеквизитНГ; // Передаем строку
Иначе
Значение = "Основная номенклатурная группа"; // Значение по умолчанию
КонецЕсли;
В правилах конвертации свойств (ПКС) на стороне приемника (УПП) настраиваем поиск элемента справочника НоменклатурныеГруппы по наименованию. Это позволит системе найти нужную аналитику.
Если мы не хотим менять конфигурацию ЗУП или добавлять доп. реквизиты, можно договориться о регламенте именования.
Назовем элементы справочника СпособыОтраженияЗарплатыВБухучете в ЗУП так, чтобы они однозначно идентифицировали аналитику УПП. Например: "Сч.20_Цех1_Мебель".
В правилах обмена (КД 2.0) пропишем логику парсинга имени или таблицу соответствий:
// Пример кода в обработчике "ПередВыгрузкой"
Если Найти(Источник.Наименование, "Цех1") > 0 Тогда
ИсходящиеДанные.Вставить("СчетЗатрат", "20.01.1");
ИсходящиеДанные.Вставить("НоменклатурнаяГруппа", "Мебель");
ИначеЕсли Найти(Источник.Наименование, "Администрация") > 0 Тогда
ИсходящиеДанные.Вставить("СчетЗатрат", "26");
КонецЕсли;
Такой подход требует дисциплины от расчетчиков зарплаты, но позволяет гибко управлять выгрузкой без изменения метаданных конфигураций.
При переносе данных важно решить, будем ли мы переносить детализацию по сотрудникам или выгружать данные сводно. Разберем оба варианта.
В этом случае документ ОтражениеЗарплатыВРеглУчете в УПП заполняется без указания сотрудников на счете 70. Все суммы "сворачиваются" до аналитики затрат.
Плюсы:
ФизическиеЛица и Сотрудники.Минусы:
Если требуется видеть задолженность по каждому человеку в УПП, необходимо настроить синхронизацию справочника ФизическиеЛица.
Важный нюанс: Уникальные идентификаторы (GUID) в ЗУП 3 и УПП 1.3 почти наверняка не совпадут, если базы велись независимо. Синхронизацию следует настраивать по полям поиска.
Рекомендуемый алгоритм поиска в КД 2.0:
// Пример настройки полей поиска в КД 2.0 для справочника ФизическиеЛица
// Устанавливаем флаг "Поиск" напротив СтраховойНомерПФР (СНИЛС)
// И дополнительно напротив Наименование + ДатаРождения
При этом важно помнить, что контактная информация (адреса, телефоны) в ЗУП 3 хранится в табличных частях или регистрах с использованием видов контактной информации из БСП новой версии, в то время как в УПП структура может быть старой. Перенос адресов — трудоемкая задача, которую стоит делать только если это критически необходимо.
При заполнении документа-приемника в УПП необходимо учитывать структуру его табличных частей. Основная вкладка, которая нас интересует — это "Проводки" (или "Отражение в учете").
Однако, в ЗУП 3.1 документ отражения содержит уже распределенные налоги и взносы. В УПП документ отражения также имеет логику формирования движений по регистрам накопления для целей НДС и затрат.
Проблема копеек (Округление):
При распределении страховых взносов по счетам затрат в ЗУП 3.1 могут возникать погрешности округления. При переносе этих сумм в УПП, сумма проводок по Дт и Кт может не сойтись на 1-2 копейки.
УПП при проведении документа жестко контролирует баланс.
Решение: В правилах конвертации (в событии ПослеЗагрузки) необходимо добавить алгоритм, который проверяет сходимость баланса документа. Разницу следует относить либо на счет 91, либо "докидывать" на самую крупную статью затрат (например, на 26 счет).
Если разработка правил обмена в "Конвертации данных" кажется избыточной или слишком сложной, существует "олдскульный" метод, который часто применялся для УПП — обмен через внешние файлы (Excel/DBF/XML своей структуры).
Алгоритм действий:
ОтражениеЗарплатыВБухучете.СчетДт | СубконтоДт1 | ... | СчетКт | СубконтоКт1 | Сумма.ОперацияБух или заполняет ОтражениеЗарплатыВРеглУчете.Этот метод часто оказывается более гибким и прозрачным для отладки, чем сложные правила XML-обмена, особенно если поддержка осуществляется силами штатного программиста, не являющегося экспертом в КД.
Подытожим основные шаги для успешной реализации обмена ЗУП 3 -> УПП 1.3:
Следуя этим рекомендациям, вы сможете построить надежную систему обмена, которая не будет требовать ежемесячного ручного вмешательства бухгалтерии.