Разрыв связи «заказ клиента — заказ поставщику» в 1С:Управление торговлей 11: что менять, в каком порядке и как проверить

· 9 мин

Содержание

Чтобы отвязать заказ поставщику от заказа клиента в 1С УТ 11, начинайте с заказа клиента: в строках товара смените вариант обеспечения Обособленно на Резервировать на складе, Резервировать к дате или Не обеспечивать и перепроведите документ. Затем откройте заказ поставщику, очистите в строках ссылку на заказ клиента и тоже перепроведите. Порядок важен: если начать с заказа поставщику, программа при следующем обеспечении снова «подтянет» связь.

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

Откуда берётся связь между заказами и когда её рвать

В Управлении торговлей 11 заказ поставщику оказывается привязан к заказу клиента в двух типичных ситуациях:

  • 🔗 заказ поставщику создан на основании заказа клиента (кнопка Создать на основании);
  • 🔗 закупка сформирована через рабочее место обеспечения потребностей (Закупки → Обеспечение потребностей), а в строках заказа клиента стоял вариант Обособленно.

При варианте Обособленно товар закупается именно под этого покупателя. Пришедшая поставка не попадает в свободный остаток: она ждёт отгрузки по конкретному заказу клиента. Для других менеджеров такой товар «невидим».

Связь стоит разрывать в таких случаях:

  1. 🚫 Клиент отменил заказ или уменьшил количество, а поставщику заказ уже отправлен.
  2. 🔄 Товар нужен срочно другому покупателю, а первый готов подождать следующую поставку.
  3. 📦 Компания решила держать позицию в складском запасе, а не под заказ.
  4. 🧩 Связь появилась по ошибке: заказ поставщику ввели на основании не того заказа клиента.

Если клиент отменил заказ целиком, часто проще закрыть заказ клиента (статус Закрыт или отмена строк с причиной), а заказ поставщику оставить как есть, но без привязки. Так история сделки сохраняется для анализа отказов.

Когда отвязывать не нужно

Если поступление по заказу поставщику уже оформлено и товар отгружен клиенту, отвязка ничего не даст: движения закрыты. Исправлять в этом случае нужно уже документы поступления и реализации, а не заказы.

Перед началом: что проверить в заказах

Пять минут подготовки избавят от путаницы с остатками.

Что проверитьГде смотретьЗачем
Статус заказа клиенташапка документа, поле Статусзакрытый заказ сначала нужно открыть, иначе правка недоступна
Статус заказа поставщикушапка документапри статусе Закрыт строки не редактируются
Есть ли поступлениекнопка Структура подчиненности (связанные документы)после поступления меняется логика отвязки
Есть ли отгрузка клиентутам же, в заказе клиентачастично отгруженные строки требуют отдельного подхода
Кто ещё работает с заказамименеджеры по продажам и закупкамчтобы никто параллельно не перезаписал документ

Не правьте заказы в закрытом периоде без согласования с главным бухгалтером — изменения статусов не влияют на проводки, но могут изменить отчёты по обеспечению за прошлые даты.

Способ 1. Отвязать заказ поставщику вручную через формы документов

Это штатный и самый безопасный путь. Подходит, когда нужно поправить один-два документа и несколько строк.

Шаг 1. Меняем вариант обеспечения в заказе клиента

  1. Откройте заказ клиента: Продажи → Заказы клиентов.
  2. На вкладке Товары найдите колонку Вариант обеспечения (или Обеспечение). Если её не видно, включите через Ещё → Изменить форму.
  3. Выделите строки, которые закупались под клиента. В них стоит Обособленно.
  4. Смените вариант:
    • Резервировать на складе — если товар уже есть на складе и его нужно отдать клиенту из общего остатка;
    • Резервировать к дате — если клиент подождёт любую ближайшую поставку;
    • Не обеспечивать — если строка больше не нужна, но заказ ещё не закрыт.
  5. Нажмите Провести и закрыть.

Шаг 2. Убираем ссылку в заказе поставщику

  1. Откройте заказ поставщику: Закупки → Заказы поставщикам.
  2. На вкладке Товары найдите колонку со ссылкой на заказ клиента. В разных релизах она называется Заказ клиента или Назначение; если колонки нет, включите её в настройке формы.
  3. Очистите значение в нужных строках (кнопка с крестиком в поле или Shift+F4).
  4. Проведите документ.

Если в заказе поставщику несколько строк с разными заказами клиентов, очищайте только нужные. Массовое выделение всех строк и очистка колонки отвяжут сразу всех покупателей.

Шаг 3. Отмена строки вместо очистки

Если товар у поставщика больше не нужен совсем, не очищайте ссылку, а отмените строку. В табличной части заказов УТ 11 есть флажок Отменено и поле причины отмены. Отменённая строка перестаёт ожидаться к поступлению и не держит обеспечение заказа клиента.

Способ 2. Перепровести или пересоздать заказ поставщику

Когда заказ поставщику создан на основании «не того» заказа клиента и в нём много строк, иногда быстрее сделать новый документ.

  1. Скопируйте заказ поставщику (F9 в списке) — копия создаётся с теми же строками.
  2. В копии очистите колонку с заказом клиента во всех строках и проведите.
  3. В исходном заказе снимите проведение (Отменить проведение в меню Ещё или в списке) и пометьте его на удаление.
  4. Если поставщику уже отправлен номер исходного заказа, сообщите ему новый номер или вместо удаления отмените все строки исходного документа.

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

Сравнение первых двух способов:

СпособКогда подходитРиски
Ручная очистка строк1–10 строк, заказ уже согласован с поставщикомминимальные, номер заказа не меняется
Отмена строктовар у поставщика не нуженстроки остаются в документе, это нормально
Копия + удаление исходногомного строк, ошибочная основадвойное поступление, если забыть про исходник; новый номер для поставщика

Способ 3. Почему «Поиск и замена значений» — плохая идея

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

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

Применять её допустимо только в узком случае:

  • 🧪 предварительно отработано на копии базы;
  • 🎯 нужно заменить один заказ клиента другим (например, ошибочный дубль заказа на правильный), а не очистить ссылку;
  • 💾 перед запуском сделана резервная копия, и пользователи предупреждены.

Если задача — отвязать десятки заказов поставщикам массово, правильный инструмент — групповая обработка с отбором по конкретному документу (способ 4), а не глобальная замена.

Способ 4. Программная отвязка для программиста 1С

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

Принцип такой же, как в ручном способе: сначала заказ клиента, потом заказ поставщику. Ниже — пример для внешней обработки, которая очищает ссылку на один заказ клиента в табличной части Товары заказа поставщику. Имя реквизита строки проверьте в Конфигураторе: в примере оно вынесено в переменную.

&НаСервере
Процедура ОтвязатьНаСервере(СсылкаЗаказПоставщику, СсылкаЗаказКлиента)

	ИмяРеквизита = "ЗаказКлиента"; // проверьте имя в метаданных вашего релиза

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

	Изменено = Ложь;
	Для Каждого Строка Из Объект.Товары Цикл
		Если Строка[ИмяРеквизита] = СсылкаЗаказКлиента Тогда
			Строка[ИмяРеквизита] = Неопределено;
			Изменено = Истина;
		КонецЕсли;
	КонецЦикла;

	Если Изменено Тогда
		Объект.Записать(РежимЗаписиДокумента.Проведение);
	КонецЕсли;

КонецПроцедуры

Что важно в этом коде:

  • ✅ проверка реквизита через метаданные защищает от ошибки в другом релизе;
  • ✅ запись с режимом Проведение пересчитывает движения по регистрам заказов и обеспечения;
  • ✅ документ перезаписывается только если что-то реально изменилось.

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

Перед программной правкой в рабочей базе:

  1. Сделайте резервную копию (выгрузка .dt или бэкап СУБД).
  2. Прогоните обработку на копии и сравните остатки обеспечения до и после.
  3. Запускайте в рабочей базе вне часов активной работы менеджеров: документ, открытый у пользователя, может быть перезаписан им поверх ваших изменений.

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

Частые ошибки при разрыве связи заказов

Диагностика: выберите симптом

Отдельно о частично выполненных заказах. Если по заказу поставщику пришла часть товара, отвязывать можно только оставшееся количество. Поступившая часть уже легла под заказ клиента; её перераспределяют не правкой заказа, а изменением варианта обеспечения в заказе клиента и, при необходимости, перемещением или резервированием.

Как проверить, что заказ поставщику отвязан от заказа клиента

Проверяйте с двух сторон — со стороны покупателя и со стороны закупки.

Со стороны заказа клиента

  1. Откройте заказ клиента и нажмите Структура подчиненности. Отвязанный заказ поставщику в дереве больше не должен висеть как подчинённый, если он не создавался на основании этого заказа клиента.
  2. Посмотрите колонку обеспечения: в отвязанных строках вариант больше не Обособленно.
  3. Откройте Продажи → Заказы клиентов и проверьте состояние обеспечения заказа: если выбран резерв к дате, статус обеспечения будет ждать ближайшую свободную поставку.

Со стороны закупки и регистров

  1. В заказе поставщику откройте движения документа (Ещё → Движения документа, доступно пользователю с соответствующими правами).
  2. В регистрах заказов поставщикам и обеспечения строки по отвязанному товару не должны содержать ссылку на заказ клиента.
  3. Откройте рабочее место Закупки → Обеспечение потребностей и убедитесь, что товар из этого заказа поставщику теперь виден как свободный источник для других заказов.
Связь разорвана корректно
Выполнено: 0 / 6

Частые вопросы

Можно ли отвязать заказ, если по нему уже есть поступление товаров?
Поступление уже зафиксировало товар под заказ клиента. Меняйте вариант обеспечения в заказе клиента: обособленный остаток перейдёт в общий только после того, как программа перестанет держать его под этого покупателя. Документ поступления при этом не трогают.
Отвязка меняет проводки или себестоимость?
Нет. Связь заказов — оперативный учёт: регистры заказов и обеспечения. Бухгалтерские проводки и себестоимость формируют поступление и реализация, а не заказы.
Нужно ли сообщать поставщику об отвязке?
Нет, если номер и состав заказа поставщику не изменились. Привязка к покупателю — внутренняя информация, поставщик её не видит. Сообщить нужно, только если вы отменили строки или пересоздали документ с новым номером.
Как запретить менеджерам ставить вариант «Обособленно»?
Штатной галочки «запретить вариант» в настройках нет. Ограничивают регламентом или доработкой в расширении конфигурации: проверка при записи заказа клиента.
Почему после отвязки в заказе клиента появилось «к закупке»?
Программа увидела, что строку больше нечем обеспечить. Выберите резерв на складе, резерв к дате или Не обеспечивать, если товар клиенту уже не нужен.