Почему после переноса через XML документы не отображаются в журналах 1С:ERP и как это исправить?

Программист 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием IT и автоматизация бизнеса
← На главную

При переносе данных между одинаковыми конфигурациями с помощью типовой обработки «Выгрузка и загрузка данных XML» специалисты нередко сталкиваются с ситуацией: процесс выгрузки и последующей загрузки проходит без ошибок, количества объектов совпадают, однако при открытии интерфейсных журналов (например, документов закупки или продажи) перенесенные документы в списке отсутствуют. При этом через меню Функции для технического специалиста (или Все функции) в таблицах конкретных видов документов эти позиции присутствуют.

Разберем детально, почему так происходит в современных конфигурациях на базе 1С:ERP, Комплексной автоматизации и Управления торговлей, и выясним, какими способами можно восстановить видимость документов в рабочих местах.

Причины невидимости документов в журналах

Проанализируем ключевые особенности платформы и архитектуры прикладных решений, приводящие к данной проблеме:

  1. Использование служебного регистра «РеестрДокументов». В современных типовых решениях (1С:ERP, 1С:КА, 1С:УТ) стандартные рабочие места и журналы документов построены не на прямых таблицах документов, а на динамических списках, считывающих данные из вспомогательного регистра сведений РеестрДокументов. Это сделано для повышения быстродействия системы при работе с большими массивами разнотипных документов. Если в этом регистре отсутствуют записи по объекту, документ физически существует в базе, но не отображается в общем журнале.
  2. Режим загрузки данных ОбменДанными.Загрузка = Истина. Обработка «Выгрузка и загрузка данных XML» производит запись объектов с установленным флагом ОбменДанными.Загрузка = Истина. В этом режиме платформа отключает исполнение большинства прикладных обработчиков событий (в модулях объектов и менеджеров), таких как ПередЗаписью, ПриЗаписи и ОбработкаПроведения. В результате служебные движения в регистре РеестрДокументов просто не формируются.
  3. Механизм оптимизации RLS (ограничение прав на уровне записей). При включенном производительном режиме RLS видимость документов в списках для пользователей зависит от заполненности специальных регистров ключей доступа. При прямой загрузке эти ключи могут не рассчитаться, и пользователь без полных административных прав не увидит строки в динамических списках.
  4. Отсутствие движений по регистрам учета. Если при экспорте были выбраны только документы, но не были отмечены связанные с ними регистры накопления и бухгалтерии, то документы загружаются с признаком Проведен = Истина, но без реальных записей в учетных регистрах.

Способ 1. Групповое перепроведение и перезапись документов

Самый простой и надежный способ сформировать необходимые записи в регистре сведений РеестрДокументов и учетных регистрах — инициировать стандартную запись или перепроведение загруженных документов с выполнением прикладных обработчиков.

  1. Перейдем в раздел «НСИ и администрирование» — «Обслуживание» — «Корректировка данных» и откроем обработку «Групповое изменение реквизитов».
  2. Выберем нужный вид перенесенных документов и настроим отбор по периоду или признаку создания.
  3. В дополнительных параметрах обработки обязательно проверим, чтобы выполнялась запись с вызовом обработчиков событий конфигурации.
  4. Запустим процесс изменения (даже без изменения значений реквизитов) или выполним перепроведение.

Также для проведения перенесенного массива документов можно воспользоваться стандартной обработкой «Проведение документов» (раздел НСИ и администрирование — Обслуживание — Регламентные операции), указав требуемый период и состав перенесенных документов.

Способ 2. Выгрузка служебных регистров вместе с документами

Если требуется перенести данные «как есть» без повторного перепроведения (например, чтобы не нарушить рассчитанные ранее себестоимость или взаиморасчеты), настроим выгрузку зависимых данных в самой обработке переноса XML.

  1. Откроем обработку «Выгрузка и загрузка данных XML» в исходной базе.
  2. В дереве метаданных найдем раздел «Регистры сведений» и обязательно установим флаг напротив регистра РеестрДокументов с отбором по тому же периоду, за который выгружаются документы.
  3. Отметим все необходимые регистры накопления, сведений и бухгалтерии, по которым сформированы движения выгружаемых документов.
  4. Выполним выгрузку и загрузим полученный XML-файл в целевую базу.

Способ 3. Обновление прав доступа и ключей RLS

Если документы появились в регистре РеестрДокументов и видны администратору, но рядовые пользователи их по-прежнему не видят, выполним актуализацию прав доступа:

  1. Перейдем в раздел «НСИ и администрирование» — «Настройки пользователей и прав».
  2. Откроем подраздел «Группы доступа» или управление правами доступа.
  3. Запустим регламентные процедуры обновления прав доступа или выполним команду пересчета ключей доступа для объектов, загруженных напрямую.

Альтернативные способы переноса между базами

Чтобы избежать описанных проблем при регулярном или разовом обмене данными, рассмотрим более подходящие инструменты переноса:

  1. Организация распределенной информационной базы (РИБ). Если базы созданы из одной исходной копии, создание узлов РИБ позволяет автоматически и корректно передавать изменения метаданных, документов и их движений с гарантией целостности.
  2. Универсальный обмен данными XML (Конвертация данных). Использование правил конвертации позволяет гибко настроить логику загрузки, в том числе отключить признак ОбменДанными.Загрузка = Истина в обработчике ПослеЗагрузки для автоматического формирования всех сопутствующих записей.
  3. Штатная синхронизация через Универсальный формат (EnterpriseData). Типовые планы обмена платформы 1С автоматически выполняют все необходимые сервисные процедуры при загрузке данных в целевую базу.
← На главную