Почему нет движений по регистру «Расчеты с клиентами по документам» в 1С:УТ 11.5 и как их вернуть?

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

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

Анализируем причину: Новая архитектура взаиморасчетов

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

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

  1. РасчетыСКлиентамиПоСрокам
  2. РасчетыСПоставщикамиПоСрокам

Если в настройках программы включен режим Онлайн, движения по старым регистрам «по документам» больше не формируются — система считает их избыточными. Это штатное поведение для 11.5, но оно может быть неудобным, если ваши доработки или внешние отчеты завязаны на старую структуру данных. Для получения нужной детализации можно использовать отчет по взаиморасчетам с покупателями по расчетным документам для УТ 11.5.

Вариант 1: Возврат к оффлайн-расчетам через настройки НСИ

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

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

Важный момент: После переключения в режим «Оффлайн», движения в регистрах не появятся мгновенно. Система перейдет в режим ожидания фонового выполнения. Проанализируем следующий шаг.

Вариант 2: Настройка регламентных заданий

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

  1. Откроем Обслуживание в разделе администрирования.
  2. Перейдем в список Регламентные и фоновые задания.
  3. Найдем задание с наименованием Выполнение отложенных движений по расчетам с клиентами/поставщиками.
  4. Включим его и настроим расписание (например, каждые 60 секунд или раз в 5 минут, в зависимости от нагрузки на базу).

После запуска этого задания система начнет обрабатывать таблицу ЗаданияКРаспределениюРасчетов и формировать привычные движения в регистре РасчетыСКлиентамиПоДокументам.

Вариант 3: Принудительное отключение новой архитектуры через константу

В некоторых случаях, даже после смены настроек в интерфейсе, система может продолжать вести себя некорректно из-за программных флагов. Рассмотрим способ, который помог пользователям на форуме — управление константой НоваяАрхитектураВзаиморасчетов.

Проанализируем программный метод проверки и установки этого флага (это можно сделать через консоль запросов или обработку «Групповое изменение реквизитов»):


// Пример логики проверки состояния константы (для ознакомления)
ЗначениеФлага = Константы.НоваяАрхитектураВзаиморасчетов.Получить();
Если ЗначениеФлага = Истина Тогда
    // Система работает в режиме Онлайн, движения "по документам" отключены
    Константы.НоваяАрхитектураВзаиморасчетов.Установить(Ложь);
КонецЕсли;

Внимание: Мы крайне не рекомендуем отключать эту константу программно в новых релизах (начиная с 11.5.12+), так как 1С постепенно вырезает код поддержки старых регистров. Это может привести к ошибкам при обновлении конфигурации или к неверному формированию отчета «Ведомость расчетов».

Почему стоит остаться на новой онлайн-архитектуре?

Разберем преимущества, которые мы теряем при откате к оффлайн-схеме. Новая архитектура была создана для решения конкретных проблем:

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

Резюме для исправления ситуации

Если вы решили все же вернуть движения в старый регистр, следуйте этому алгоритму:

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

Таким образом, мы выяснили, что отсутствие движений — это не программная ошибка, а результат эволюции архитектуры 1С. Выбор между «старым» и «новым» режимом остается за вами, но помните о долгосрочной поддержке вашей конфигурации.

← На главную