Как настроить подмену отчета Ведомость расчетов с клиентами и разобраться в архитектуре взаиморасчетов в 1С:УТ 11

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

При работе с конфигурацией 1С:Управление торговлей 11 (а также 1С:ERP и 1С:Комплексная автоматизация) специалисты часто сталкиваются с «ребусом»: при нажатии на одну и ту же кнопку в интерфейсе в разных базах открываются разные объекты метаданных. Чаще всего это касается отчета Ведомость расчетов с клиентами. В одной базе система запускает отчет РасчетыСКлиентами, а в другой — ВедомостьРасчетовСКлиентами.

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

Разберем причину: Смена архитектуры взаиморасчетов

Первым делом проанализируем ситуацию. В современных версиях УТ 11 существует два режима ведения взаиморасчетов:

  1. Офлайн (Старая архитектура): Данные пишутся в регистр накопления РасчетыСКлиентами. Расчет задолженности (разбивка по накладным и оплатам) происходит при запуске регламентного задания или при закрытии месяца. Этому режиму соответствует отчет РасчетыСКлиентами.
  2. Онлайн (Новая архитектура): Данные пишутся в новые регистры, такие как РасчетыСКлиентамиПоДокументам и РасчетыСКлиентамиПоСрокам. Расчет происходит «на лету» в момент проведения документа. Этому режиму соответствует новый отчет ВедомостьРасчетовСКлиентами.

Разработчики 1С специально реализовали механизм, который скрывает «старые» отчеты, если включен «новый» режим, и наоборот. Это сделано для того, чтобы пользователь не видел пустые отчеты или некорректные данные, так как старый отчет просто не «знает» о существовании новых регистров.

Проанализируем работу функциональных опций

Выясним техническую сторону вопроса. Видимость того или иного отчета регулируется механизмом Функциональных опций (ФО). В конфигурации за это отвечают две основные опции:

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

Рассмотрим ситуацию, когда в рабочей базе включен режим «Онлайн», а в демо-базе — «Офлайн». В этом случае интерфейсное название отчета в обоих случаях будет «Ведомость расчетов с клиентами», но ссылаться они будут на разные объекты конфигурации.

Как изменить поведение системы: Шаг за шагом

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

Шаг 1. Проверка режима взаиморасчетов

Перейдем в раздел НСИ и администрирование — Казначейство и взаиморасчеты. Найдем блок настроек Взаиморасчеты. Выясним, какое значение установлено в поле «Режим ведения взаиморасчетов». Если стоит «Онлайн», система автоматически подставляет новый отчет.

Шаг 2. Использование справочника Варианты отчетов

Для того чтобы принудительно изменить привязку, выполним следующие действия:

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

Шаг 3. Корректировка функциональных опций (для программистов)

Если вам требуется использовать старый отчет РасчетыСКлиентами в режиме «Онлайн» (например, для анализа исторических данных до перехода), можно внести изменения в конфигураторе. Разберем, как это сделать:

  1. Найдем в дереве метаданных функциональную опцию НоваяАрхитектураВзаиморасчетов.
  2. В составе этой опции найдем отчет ВедомостьРасчетовСКлиентами.
  3. Если мы хотим видеть там и старый отчет, его нужно добавить в состав этой опции.

Внимание: Будьте осторожны. Старый отчет в режиме «Онлайн» может показывать нулевые остатки, так как он обращается к регистру РасчетыСКлиентами, который в новом режиме не заполняется.

Проблема сохраненных пользовательских вариантов

Часто пользователи жалуются, что после обновления «пропали их настройки». Проблема заключается в том, что пользовательские варианты отчета РасчетыСКлиентами привязаны к конкретному идентификатору объекта. Когда система подменяет его на ВедомостьРасчетовСКлиентами, старые варианты не отображаются, так как у нового отчета совершенно другая структура СКД (Схемы компоновки данных).

Рассмотрим код, который теоретически мог бы помочь при обновлении вспомогательных данных БСП, но в данной ситуации он лишь актуализирует привязки к ФО:


// Пример вызова обновления настроек отчетов из состава БСП
Справочники.ВариантыОтчетов.ОбновитьПредопределенныеВарианты();
ВариантыОтчетов.ОбновитьДанныеСправочника();

Однако даже после выполнения этих команд, если режим взаиморасчетов сменился на «Онлайн», старые варианты останутся скрытыми, пока вы не переключите режим обратно или не измените настройки видимости в справочнике ВариантыОтчетов вручную.

Заключение и рекомендации

Подведем итог нашему исследованию. Подмена отчета — это не ошибка, а задуманное поведение разработчиков 1С при переходе на Новую архитектуру взаиморасчетов.

Если вам критически важно вернуть старые настройки, рассмотрите возможность перевода базы обратно в режим «Офлайн» (если это еще возможно и данные в старых регистрах актуальны), либо займитесь переносом настроек СКД из старого отчета в новый вручную. Помните, что начиная с версии 11.5, поддержка старой архитектуры постепенно прекращается, и лучшим решением будет адаптация пользовательских вариантов под новый отчет ВедомостьРасчетовСКлиентами.

← На главную