Почему документы не исчезают из списка «Передачи к оформлению» в 1С:УТ 11 и как это исправить?

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

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

Анализируем механику работы регистра «Товары организаций к передаче»

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

Проанализируем ситуацию: если в реализации был списан товар с определенным Номером ГТД или конкретным Видом запасов, а в передаче эти данные заполнились иначе, запись в регистре не «захлопнется». Программа будет считать, что вы передали «какой-то другой» товар, а потребность по реализации все еще висит.

Решение 1. Выполнение регламентной операции «Свертка резервов»

В типовых конфигурациях версии 11.4 и выше за чистоту данных в Интеркампани отвечает специальное регламентное задание. Часто бывает достаточно запустить его принудительно, чтобы «лишние» распоряжения исчезли. Рассмотрим, как это сделать:

  1. Перейдем в раздел Финансовый результат и контроллинг.
  2. Откроем Обслуживание — Регламентные операции.
  3. Найдем операцию Свертка резервов товаров организаций.
  4. Запустим выполнение.

Эта операция сопоставляет накопленные остатки и обороты в регистрах РезервыТоваровОрганизаций и ТоварыОрганизацийКПередаче, убирая «мусорные» записи, которые мешают корректному отображению списка к оформлению.

Решение 2. Контроль отрицательных остатков и его влияние

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

Если вы столкнулись с «зависшими» передачами, обязательно проверьте, не было ли реализации «в минус». В таком случае сначала нужно выровнять остатки (оформить поступление на организацию-владельца), а уже потом пытаться переоформить передачу.

Решение 3. Программная очистка регистров накопления

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

Рассмотрим пример кода для очистки регистра РезервыТоваровОрганизаций:


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    РезервыТоваровОрганизаций.Регистратор КАК Регистратор
    |ИЗ
    |    РегистрНакопления.РезервыТоваровОрганизаций КАК РезервыТоваровОрганизаций
    |ГДЕ
    |    РезервыТоваровОрганизаций.Период МЕЖДУ &ДатаН И &ДатаК
    |УПОРИЯДОЧИТЬ ПО
    |    РезервыТоваровОрганизаций.Регистратор.Дата";

Запрос.УстановитьПараметр("ДатаН", ДатаНачала);
Запрос.УстановитьПараметр("ДатаК", ДатаКонца);
РезультатЗапроса = Запрос.Выполнить();    
Выборка = РезультатЗапроса.Выбрать();      

Пока Выборка.Следующий() Цикл
    Набор = РегистрыНакопления.РезервыТоваровОрганизаций.СоздатьНаборЗаписей();
    Набор.Отбор.Регистратор.Значение = Выборка.Регистратор;
    Набор.Записать(); // Записываем пустой набор, тем самым очищая движения
КонецЦикла;

Аналогичным образом проанализируем и очистим регистр ТоварыОрганизацийКПередаче, который напрямую отвечает за список в интерфейсе:


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    ТоварыОрганизацийКПередаче.Регистратор КАК Регистратор
    |ИЗ
    |    РегистрНакопления.ТоварыОрганизацийКПередаче КАК ТоварыОрганизацийКПередаче
    |ГДЕ
    |    ТоварыОрганизацийКПередаче.Период МЕЖДУ &ДатаН И &ДатаК";

Запрос.УстановитьПараметр("ДатаН", НачалоДня(ДатаНачала));
Запрос.УстановитьПараметр("ДатаК", КонецДня(ДатаКонца));

РезультатЗапроса = Запрос.Выполнить();    
Выборка = РезультатЗапроса.Выбрать();      

Пока Выборка.Следующий() Цикл
    Набор = РегистрыНакопления.ТоварыОрганизацийКПередаче.СоздатьНаборЗаписей();
    Набор.Отбор.Регистратор.Значение = Выборка.Регистратор;
    Набор.Записать(); 
КонецЦикла;

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

Решение 4. Проверка ГТД и видов запасов

Разберем ситуацию, когда проблема кроется в детализации учета. В 1С:УТ 11 версии 11.4.6 часто возникали ошибки, если в реализации был автоматически подобран Номер ГТД, который отсутствовал на остатках организации-отправителя по мнению регистра ТоварыОрганизацийКПередаче.

Посмотрим на рекомендации по проверке:

  1. Откройте отчет Ведомость по товарам организаций с группировкой по Видам запасов и Номерам ГТД.
  2. Найдите позиции, по которым висит отрицательный остаток на одной организации и положительный на другой.
  3. Убедитесь, что в документе Передача товаров выбраны именно те ГТД и те Виды запасов, которые были списаны реализацией.

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

Итоги и рекомендации

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

Для стабильной работы Интеркампани рекомендуем:

← На главную