При работе с программными продуктами на платформе 1С:Предприятие 8.3, особенно в таких сложных конфигурациях, как Зарплата и управление персоналом 3.1 (ЗУП), специалисты часто сталкиваются с парадоксальной ситуацией. После переноса данных через универсальную обработку ВыгрузкаЗагрузкаДанныхXML83 документы отображаются как проведенные, запросом в консоли мы видим записи в регистрах накопления или сведений, но при нажатии на кнопку "Движения документа" открывается пустая форма. Более того, типовые отчеты также отказываются выводить данные, показывая только "шапку".
В этой статье мы подробно разберем причины возникновения этой проблемы и рассмотрим пошаговые алгоритмы её решения. Проанализируем ситуацию, выясним роль системных механизмов БСП и научимся восстанавливать корректную работу базы данных.
Разберем, почему это происходит. В современных конфигурациях, построенных на базе Библиотеки стандартных подсистем (БСП), существует специальный справочник — ИдентификаторыОбъектовМетаданных. Платформа и программные отчеты (включая отчет "Движения документа") обращаются не к метаданным в конфигураторе напрямую, а к записям в этом справочнике для определения типов данных, прав доступа и связей.
Когда мы выполняем перенос данных через XML, особенно между базами с разной историей обновлений или конфигурациями, которые не являются идентичными копиями "байт в байт", внутренние идентификаторы (GUID) метаданных могут не совпадать с теми, что хранятся в справочнике. Программа "ищет" движения по одному идентификатору, а в базе они записаны с другим.
Решение: Принудительное обновление информационной базы
Для восстановления связей нам необходимо запустить процедуру обновления вспомогательных данных. Выполним следующие действия:
/С ЗапуститьОбновлениеИнформационнойБазы
ИдентификаторыОбъектовМетаданных будет синхронизирован с текущим состоянием конфигурации.После завершения процесса проверим отчет "Движения документа" — в большинстве случаев данные начнут отображаться корректно.
Проанализируем специфику конфигурации ЗУП. В отличие от многих других программ, форма "Движения документа" здесь является не стандартным окном платформы, а отдельным программным отчетом ДвиженияДокумента. Этот отчет формируется динамически с использованием системы компоновки данных (СКД) и сложных алгоритмов сбора данных.
Если отчет пустой, это может означать, что:
Рассмотрим способ исправления через очистку кэша. Посмотрим, как это сделать правильно:
%AppData%\1C\1Cv8\ и %LocalAppData%\1C\1Cv8\.Выясним еще одну важную деталь. В ЗУП 3.1 существует "вагон" регистров сведений, которые напрямую не являются движениями документа (у них нет регистратора), но они тесно связаны с его проведением (например, СостоянияСотрудников, ДанныеОВремениДляРасчетаСреднегоЗаработка). При переносе данных через XML с отключенной опцией "Выгружать по ссылке" эти данные могли не попасть в целевую базу.
Если основные движения в регистрах накопления есть, а вспомогательные записи в регистрах сведений отсутствуют, отчеты могут игнорировать такие документы. В этом случае перепроведение документа — логичный шаг, однако оно может не сработать, если в базе нарушена целостность ссылочных данных (битые ссылки).
Рассмотрим, как восстановить целостность данных через Тестирование и Исправление (ТиИ):
Если по каким-то причинам запуск с ключом /С невозможен, воспользуемся инструментами внутри программы. Рассмотрим работу с подсистемой поддержки:
Подводя итог, можно составить эффективный чек-лист для исправления ситуации, когда движения есть в базе, но не видны в интерфейсе:
/С ЗапуститьОбновлениеИнформационнойБазы. В 90% случаев это решает проблему.Следуя этим шагам, мы сможем восстановить корректную работу конфигурации и обеспечить правильное формирование отчетности после сложной миграции данных.