Почему пропадают привычные отчеты по взаиморасчетам в 1С:Управление торговлей и как вернуть их в панель отчетов?

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

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

Архитектурная причина: онлайн-взаиморасчеты и функциональные опции БСП

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

Разработчики создали совершенно разные объекты метаданных для каждого из режимов. Проанализируем это на примере расчетов с контрагентами:

  1. Для классического (офлайн) режима используется объект метаданных Отчет.РасчетыСПоставщиками (или Отчет.РасчетыСКлиентами).
  2. Для нового (онлайн) режима предназначен объект Отчет.ВедомостьРасчетовСПоставщиками (или Отчет.ВедомостьРасчетовСКлиентами).

В Библиотеке стандартных подсистем (БСП) действует строгое правило наследования видимости: функциональные опции применяются ко всему объекту отчета целиком. Если в информационной базе включена новая архитектура взаиморасчетов, старый объект отчета отключается функциональной опцией. Все варианты отчетов, включая созданные пользователями вручную, автоматически скрываются из командного интерфейса и панели отчетов. Даже если открыть старый отчет через меню функций для технического специалиста и попытаться сохранить его вариант, подсистема БСП принудительно отфильтрует его из списка разделов, поскольку базовый объект метаданных заблокирован функциональной опцией.

Технические риски использования старых отчетов

Прежде чем возвращать старую форму отчета, рассмотрим технические риски, с которыми может столкнуться информационная база. Старые и новые отчеты используют принципиально разные регистры накопления:

  1. Старый отчет формирует выборку из регистров офлайн-архитектуры.
  2. Новый отчет читает данные из оперативных регистров по срокам расчетов, движения по которым создаются непосредственно при проведении документов или специализированным регламентным фоновым заданием.

Если в базе активен онлайн-режим, движения по старым регистрам могут формироваться не полностью либо не актуализироваться вовремя. В результате данные старого отчета неизбежно начнут расходиться с фактическим сальдо, банковскими выписками и актами сверки взаимных расчетов. Поэтому наиболее безопасным подходом является настройка нового отчета.

Способ 1. Адаптация нового отчета под привычную структуру (рекомендуемый)

Разберем по шагам самый корректный вариант, не требующий доработок конфигурации и не искажающий финансовые остатки:

  1. Откроем новый отчет (например, Ведомость расчетов с поставщиками).
  2. Нажмем кнопку Настройки и переключимся в режим Расширенный.
  3. Перейдем на вкладку Структура. В большинстве случаев недовольство новым отчетом вызвано глубокой детализацией по расчетным документам, этапам и срокам оплаты. Удалим лишние уровни группировок, оставив классический состав: Партнер > Контрагент > Договор.
  4. Настроим необходимые поля, отборы и сортировки.
  5. Сохраним отчет через меню: Еще > Вариант отчета > Сохранить как..., указав признак доступности всем пользователям.

Поскольку объект Отчет.ВедомостьРасчетовСПоставщиками не заблокирован функциональной опцией, его сохраненный вариант сразу появится в панели отчетов соответствующего раздела у всех пользователей с нужными правами.

Способ 2. Подключение отчета через механизм дополнительных отчетов и обработок

Если бухгалтерии или аналитикам категорически требуется прежний макет или алгоритм компоновки данных, старый отчет можно вывести в интерфейс в обход ограничений функциональной опции:

  1. Откроем конфигурацию в режиме Конфигуратор.
  2. Найдем требуемый отчет (например, Отчет.РасчетыСПоставщиками), нажмем по нему правой кнопкой мыши и выберем команду Сохранить как внешний отчет в файл с расширением .erf.
  3. Запустим информационную базу в режиме 1С:Предприятие.
  4. Перейдем в раздел НСИ и администрирование > Печатные формы, отчеты и обработки > Дополнительные отчеты и обработки.
  5. Добавим новый элемент, загрузив сохраненный файл .erf, назначим публикацию в нужных подсистемах (например, Закупки или Продажи) и укажем список пользователей.

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

Способ 3. Включение видимости через константу

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

Если установить значение константы НеНоваяАрхитектураВзаиморасчетов в значение Истина, это вернет видимость старых отчетов в командном интерфейсе подсистем. При этом сам механизм проведения документов и регистрации расчетов продолжит управляться константой НоваяАрхитектураВзаиморасчетов, что позволит избежать аварийной остановки работы учета.

Способ 4. Доработка в конфигураторе и обновление данных БСП

Если принято решение включить старый отчет в состав командного интерфейса конфигурации через добавление в подсистемы с установкой флага Использовать стандартные команды, необходимо учитывать особенности механизма БСП.

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

/ЗапуститьОбновлениеИнформационнойБазы

Либо выполним вызов программного метода БСП во внешней обработке:

ВариантыОтчетов.Обновить();

После завершения процедуры обновления служебных данных варианты отчетов займут свои места в панелях разделов согласно заданным метаданным.

← На главную