При работе с программным продуктом «1С:Управление торговлей 11.4» технические специалисты часто сталкиваются с загадочной ситуацией: в двух абсолютно идентичных по релизу базах типовой отчет ведет себя по-разному. В одной базе он формируется корректно, а в другой выдает критическую ошибку: «Поля отчета не найдены». При попытке изменить вариант отчета система настойчиво предлагает удалить «несуществующие» поля, такие как ДолгПартнераНачальныйОстаток или ДолгУвеличение. Разберем детально, почему так происходит и как восстановить работоспособность системы.
Проанализируем ключевое различие, которое часто ускользает от внимания администраторов. В конфигурации «УТ 11.4» (и выше) заложены две принципиально разные модели учета расчетов: «Оффлайн» и «Онлайн». Это не просто косметическая настройка интерфейса, а переключение всей логики работы системы на уровне регистров накопления.
Рассмотрим, как это влияет на отчеты:
РасчетыСКлиентами. Итоговые показатели и остатки в отчетах часто зависят от выполнения фоновых заданий по закрытию месяца или актуализации расчетов.РасчетыСКлиентамиПоДокументам и РасчетыСПоставщикамиПоДокументам. Здесь расчет остатков и распределение оплат по документам-основаниям происходит мгновенно в момент проведения документа.Когда мы переносим настройки отчета (через XML или копированием настроек пользователя) из «Оффлайн»-базы в «Онлайн»-базу, происходит конфликт. Система Компоновки Данных (СКД) в типовых отчетах содержит условия, зависящие от функциональных опций. Если включена опция «Онлайн», схема СКД подменяет наборы данных. Поля, которые были доступны в «Оффлайн» режиме (например, ДолгПартнераНачальныйОстаток), физически исчезают из доступного выбора, так как в новой архитектуре используются другие ресурсы и измерения.
Для подтверждения этой теории проделаем следующие шаги в обеих базах:
Если в одной базе установлено значение Онлайн, а в другой Оффлайн (с распределением по документам при закрытии месяца или фоновым заданием), то мы нашли корень проблемы. Сохраненные варианты отчетов, созданные в разных режимах, несовместимы между собой.
В процессе диагностики мы можем заметить, что файлы выгруженной конфигурации (.cf) различаются по размеру (например, на 754 байта), хотя обе базы находятся на одном релизе и стоят «на замке». Проанализируем, почему это происходит:
Для восстановления корректной работы отчетов в базе, где была изменена настройка взаиморасчетов, выполним следующие действия:
Самый простой и действенный способ — заставить СКД перечитать структуру данных. Для этого:
После этого система подтянет актуальные поля, соответствующие текущему режиму взаиморасчетов (Онлайн или Оффлайн). Все «старые» поля, которые вызывали ошибку, будут автоматически заменены или удалены.
Если вы недавно переключили режим с «Оффлайн» на «Онлайн», необходимо убедиться, что процесс конвертации данных завершен. Разберем, как это проверить:
Перейдем в НСИ и администрирование — Обслуживание — Обновление программы — Результаты обновления. Нам нужно найти пункт Дополнительные процедуры обработки данных. Если процесс переноса данных в новые регистры взаиморасчетов не завершен, отчеты могут не просто ругаться на поля, но и показывать нулевые остатки.
Проанализируем ситуацию, когда типовой отчет может быть перехвачен расширением. Даже если конфигурация «на замке», в базе могут присутствовать активные Расширения конфигурации. Проверьте список расширений: если одно из них модифицирует схему СКД или набор данных регистра, это может привести к невидимости полей для стандартного механизма отчетов.
Если вышеуказанные действия не помогли, выполним техническую очистку:
Проблема «исчезающих» полей в УТ 11.4 — это классический пример того, как глубокие архитектурные изменения (переход на Онлайн-взаиморасчеты) влияют на пользовательский слой (отчеты СКД). Помните, что сохраненные настройки отчета «хранят» в себе структуру полей. Если структура базы изменилась через функциональные опции, старые настройки становятся невалидными. Всегда начинайте диагностику с проверки функциональных опций в разделе Казначейство и взаиморасчеты.