Как перенести документ Зарплата (ЗУП 2.5, ЗиК 7.7) между базами 1С:Бухгалтерия 3.0

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

При работе с конфигурацией 1С:Бухгалтерия предприятия 3.0 (БП 3.0) пользователи и администраторы часто сталкиваются с необходимостью переноса данных между двумя одинаковыми информационными базами (например, из рабочей базы в тестовую или между филиалами). Одной из специфических задач является перенос данных по начислениям, которые имеют в интерфейсе пометку "Зарплата (ЗУП 2.5, ЗИК 7.7)". Сложность заключается в том, что этот документ бывает трудно найти в общем списке метаданных, а его структура отличается от современных аналогов.

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

Шаг 1. Идентификация документа в метаданных

Прежде всего, нам необходимо выяснить, какой именно объект конфигурации соответствует пункту меню "Зарплата (ЗУП 2.5, ЗИК 7.7)". Рассмотрим структуру метаданных БП 3.0, чтобы не допустить путаницы, так как в системе существует несколько похожих документов:

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

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

Шаг 2. Использование обработки "Выгрузка и загрузка данных XML"

Для переноса данных между абсолютно идентичными конфигурациями (когда версии метаданных в базе-источнике и базе-приемнике совпадают) самым эффективным инструментом является универсальная обработка "Выгрузка и загрузка данных XML" (ВыгрузкаЗагрузкаДанныхXML.epf). Рассмотрим по шагам процесс работы с ней:

  1. Запуск обработки: Откроем обработку в базе-источнике через меню "Файл" -> "Открыть".
  2. Выбор объектов: В дереве объектов метаданных найдем раздел "Документы" и отметим галочкой ОтражениеЗарплатыВУчете.
  3. Настройка фильтра: Чтобы не выгружать лишние данные, перейдем к настройке отбора. Мы можем указать конкретный период или отобрать документы по конкретной организации.
  4. Выгрузка по ссылкам: Это критически важный момент. Обязательно установим флаг "Выгружать объекты по ссылкам". Документ содержит ссылки на справочники (Сотрудники, Физические лица, Подразделения, Статьи затрат, Счета учета). Если не включить эту опцию, в базе-приемнике вы получите документ с "битыми" ссылками (объект не найден).
  5. Формирование файла: Укажем путь к файлу выгрузки и нажмем кнопку "Выгрузить".
  6. Загрузка: В базе-приемнике откроем ту же обработку, перейдем на закладку "Загрузка", выберем наш файл и нажмем "Загрузить".

Важное замечание по GUID: Данная обработка переносит объекты с сохранением их внутренних идентификаторов (GUID). Это гарантирует, что при повторной выгрузке документ обновится, а не создаст дубль. Однако, если справочники в базах создавались независимо (вручную), возможны дубликаты элементов справочников. Рассмотрим ситуацию: если сотрудник "Иванов" уже есть в обеих базах, но создан вручную, после переноса документа может появиться второй "Иванов" (из базы-источника).

Шаг 3. Программный метод переноса через сериализацию XML

В некоторых случаях, когда необходимо автоматизировать процесс или перенести данные программно (например, через COM-соединение или веб-сервис), удобно использовать механизмы Библиотеки стандартных подсистем (БСП) и XDTO-сериализацию. Разберем пример функций, которые позволяют преобразовать любой объект (включая наш документ) в строку XML и обратно.

Рассмотрим код для преобразования значения в строку XML:


Функция ЗначениеВСтрокуXML(Значение) Экспорт
    ЗаписьXML = Новый ЗаписьXML;
    ЗаписьXML.УстановитьСтроку();
    // Используем СериализаторXDTO для корректной обработки ссылочных типов
    СериализаторXDTO.ЗаписатьXML(ЗаписьXML, Значение);
    Возврат ЗаписьXML.Закрыть();
КонецФункции

Проанализируем данный код. Здесь используется объект СериализаторXDTO, который умеет раскладывать объект 1С на составляющие, понятные XML-структуре. Теперь рассмотрим обратную операцию — десериализацию:


Функция ЗначениеИзСтрокиXML(СтрокаXML) Экспорт
    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.УстановитьСтроку(СтрокаXML);
        
    // Восстанавливаем объект из XML-строки
    Значение = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
    Возврат Значение;
КонецФункции

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

Шаг 4. Настройка параметров учета в базе-приемнике

После того как мы успешно перенесли документ, мы можем обнаружить, что он "не виден" в стандартных журналах или не формирует нужные проводки. Выясним причину такого поведения. В 1С:Бухгалтерия 3.0 логика работы с зарплатой зависит от настроек учетной политики.

Проверим следующие настройки:

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

Резюме

Для успешного обмена между одинаковыми конфигурациями БП 3.0 в части зарплатных документов необходимо:

  1. Использовать правильное имя объекта в метаданных — ОтражениеЗарплатыВУчете.
  2. Применять обработку "Выгрузка и загрузка данных XML" с обязательным включением выгрузки по ссылкам.
  3. При необходимости программного переноса использовать СериализаторXDTO.
  4. Проверять настройки функциональности и параметров учета в базе-приемнике, чтобы загруженные данные корректно отразились в бухгалтерском учете.

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

← На главную