В процессе работы с конфигурацией «1С:Управление торговлей 11» (начиная с версий 11.4 и выше) пользователи и администраторы часто сталкиваются с неприятной ситуацией: при формировании акта сверки или ведомости расчетов с поставщиками суммы оплат (дебет) отображаются в двойном размере. При этом само Списание безналичных денежных средств проведено корректно, а в бухгалтерских проводках сумма верна. Проблема кроется глубоко в архитектуре механизма «Онлайн-взаиморасчетов». В этой статье мы подробно разберем причины возникновения таких фантомных записей и рассмотрим пошаговые алгоритмы их устранения.
Прежде чем переходить к лечению, давайте разберем механику процесса. В современных версиях УТ 11 расчеты не записываются напрямую в итоговые регистры накопления (такие как Расчеты с поставщиками по срокам) в момент нажатия кнопки «Провести». Вместо этого система использует промежуточную очередь.
Разберем эту цепочку по шагам:
Списание безналичных ДС) при проведении создает запись в техническом регистре-очереди.Распределение расчетов подхватывает эту запись и выполняет математический расчет: на какой объект (заказ, договор или накладную) должна лечь эта сумма.Регистратор расчетов и в регистры накопления взаиморасчетов.Выясним причину сбоя: Задвоение чаще всего происходит, когда связь между первичным документом и записью в Регистраторе расчетов нарушается. Например, документ был изменен или удален, а запись в служебном регистре осталась «висеть». В итоге отчеты суммируют и актуальные данные, и «мусорные» записи, которые не имеют владельца, но числятся за контрагентом.
Рассмотрим ситуацию, когда стандартное перепроведение документов не помогает. Это означает, что в базе присутствуют «битые» записи в служебных таблицах. Для их поиска нам понадобится Консоль запросов или Консоль редактора записей регистров.
Проанализируем алгоритм действий:
Регистратор расчетов, отобрав их по конкретному контрагенту и периоду, где возникло задвоение.Регистратор. Если мы видим запись с суммой, но при попытке открыть документ-регистратор система выдает ошибку или открывает пустой объект — мы нашли «фантом».
// Пример удаления битых записей из регистра РегистраторРасчетов
НаборЗаписей = РегистрыСведений.РегистраторРасчетов.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(ОбъектРасчетовСсылка); // Указываем битый документ
НаборЗаписей.Записать();
// Пустая запись набора с установленным отбором удаляет данные из БД
После удаления «мусорных» записей необходимо выполнить полную очистку и перепроведение проблемной платежки. Как показывает практика, после ручного вмешательства в этот регистр дебет в акте сверки приходит в норму.
Иногда проблема вызвана не техническим мусором, а нарушением логической цепочки Объектов расчетов. В УТ 11 объект расчетов — это скрытый справочник, который связывает оплаты и отгрузки. Если сначала была введена оплата, потом заказ, а потом накладная, и в каждом документе аналитика заполнялась в разном порядке, система может создать два разных объекта расчетов для одной сделки.
Разберем правильный порядок восстановления данных, который помогает в 90% случаев без использования программного кода:
Заказы поставщикам.Приобретения товаров и услуг, убедившись, что в них правильно указан документ-основание (заказ).Списания безналичных ДС (оплаты).Важный момент: При проведении оплат обязательно проверяйте закладку «Расшифровка платежа». Если там выбрано «Список», убедитесь, что сумма распределена именно на те документы, которые вы провели ранее. Такой метод заставляет систему «схлопнуть» аналитику в единый объект расчетов. Для автоматизации этой операции можно использовать обработку для разноски платежей по объектам расчетов.
Важно понимать, что задвоение может быть следствием официально признанных ошибок конфигурации. Проанализируем наиболее характерные из них для версии 11.4:
Приобретении товаров и услуг. Специалисты 1С рекомендуют в таких случаях временно выключить и снова включить опцию онлайн-взаиморасчетов в настройках НСИ.Чтобы избежать повторения ситуации с «раздутым» дебетом, рекомендуем придерживаться следующих правил при работе в 1С:УТ 11:
Во-первых, никогда не используйте ручную корректировку проводок в документах взаиморасчетов. В УТ 11 это гарантированный способ «сломать» регистры накопления, так как ручная правка регистра Хозрасчетный не синхронизируется с регистрами Расчеты с поставщиками. Система продолжит видеть задолженность по управленческому учету, даже если бухгалтерская проводка исправлена.
Во-вторых, регулярно запускайте регламентную операцию «Исправление ошибок в данных взаиморасчетов». Она находится в разделе НСИ и администрирование -> Обслуживание -> Корректировка данных. Эта обработка способна в автоматическом режиме найти и устранить несоответствия между остатками в различных регистрах расчетов. Для устранения зависших остатков и расхождений также подойдёт обработка по автоматизации зачета авансов.
В-третьих, следите за состоянием фонового задания по распределению взаиморасчетов. Если вы видите, что в отчетах данные не обновляются или двоятся, проверьте Журнал регистрации. Если фоновое задание завершается с ошибкой (например, из-за блокировки записей другим пользователем), расчеты «зависнут» в промежуточном состоянии, создавая видимость неверных сумм.
Подводя итог, можно сказать, что задвоение дебета в УТ 11 — это почти всегда следствие «грязных» данных в служебных регистрах, вызванных либо программным сбоем при записи, либо нарушением последовательности ввода документов. Использование инструментов очистки регистра Регистратор расчетов и строгое соблюдение хронологии проведения документов позволяют полностью решить эту проблему.