Удаление контрагента из справочника 1С 8.3: от пометки до переноса документов

· 9 мин

Содержание

Чтобы в 1С удалить контрагента , откройте справочник Справочники → Покупки и продажи → Контрагенты (БП 3.0), выделите строку и нажмите Del — элемент получит пометку на удаление. Физически его уберёт обработка Администрирование → Обслуживание → Удаление помеченных объектов, но только если контрагент нигде не используется: ни в документах, ни в договорах, ни в остатках.

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

Почему контрагента в 1С нельзя просто стереть

Контрагент — не строчка в таблице, а объект, на который ссылаются десятки других объектов. Его выбирают в документах, к нему привязаны договоры, банковские счета, контактные лица, по нему копятся остатки на счетах 60, 62, 76. Если стереть карточку целиком, все эти ссылки «повиснут».

В отчётах и документах вместо названия появится надпись вида <Объект не найден> (45:b3c1...). Оборотно-сальдовая ведомость перестанет сходиться с актами сверки, книга покупок и продаж потеряет ИНН продавца или покупателя, а провести такой документ повторно уже не получится.

Поэтому платформа 1С:Предприятие 8.3 работает по схеме из двух шагов:

  • 🏷️ Пометка на удаление — обратимая. Карточка остаётся в базе, в списке у неё появляется красный крестик. Пометку можно снять в любой момент.
  • 🗑️ Удаление помеченных объектов — окончательное. Обработка перед удалением проверяет ссылки и удаляет только то, на что никто не ссылается.

В типовых конфигурациях на базе БСП (Бухгалтерия 3.0, УТ 11, ЗУП 3.1, КА 2) право непосредственного удаления обычно не выдают даже администратору. Поэтому Shift+Del в списке, как правило, ничего не делает или ставит ту же пометку.

СитуацияЧто делатьРиск
Контрагент создан по ошибке, документов нетПометка + удаление помеченныхНет
Дубль: два контрагента с одним ИННОбъединение элементовИзменятся документы, где стоял дубль
Есть документы, но контрагент «не тот»Перенос документов на нужногоМеняется отчётность прошлых периодов
Есть документы, контрагент просто больше не нуженНе удалять, перенести в архивную группуНет
Тысячи лишних контрагентов после обменаПрограммная пометка + удаление помеченныхОшибка в коде затронет нужные элементы

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

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

Поиск ссылок на объект

Самый точный инструмент — стандартная обработка поиска ссылок:

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

Результат — таблица всех объектов, где встречается контрагент: документы, договоры, регистры сведений, записи в настройках. Двойной щелчок открывает найденный объект.

Остатки и обороты по счетам

Ссылки показывают «где», а бухгалтерские отчёты — «сколько». Сформируйте оборотно-сальдовую ведомость по счетам 60, 62 и 76 с отбором по контрагенту за весь период работы базы.

  • ✅ Сальдо нулевое, оборотов нет — контрагент чистый, его можно удалять.
  • ⚠️ Обороты есть, сальдо нулевое — документы были, расчёты закрыты. Удалить карточку не получится, пока есть документы.
  • ⛔ Есть сальдо — по контрагенту висит долг. Его нельзя просто убрать: долг уйдёт вместе с документами, и баланс изменится.

Если контрагент выбран только в подчинённых справочниках (договоры, банковские счета, контактные лица), это не помеха. При пометке владельца на удаление подчинённые элементы помечаются вместе с ним, и обработка удалит их одним пакетом.

Способ 1. Удалить контрагента без документов

Это самый частый случай: карточку завели по ошибке, задвоили при вводе или создали для пробы.

  1. Откройте Справочники → Покупки и продажи → Контрагенты.
  2. Найдите элемент через строку поиска (по названию или ИНН).
  3. Выделите строку и нажмите Del. Ту же команду можно найти в меню Еще командной панели списка — «Пометить на удаление / Снять пометку».
  4. Подтвердите вопрос программы. В строке появится красный крестик.

Если у пользователя есть право интерактивного удаления (так бывает в нетиповых и доработанных базах), Shift+Del удалит элемент сразу, с проверкой ссылок. В типовой базе этот вариант не сработает, переходите к способу 2.

Помеченные элементы можно скрыть: в меню Еще списка есть команда показа помеченных на удаление объектов. Если крестиков не видно, а вы точно ставили пометку, проверьте этот переключатель.

Способ 2. Пометка на удаление и окончательная чистка

После пометки контрагент продолжает лежать в базе. Чтобы убрать его физически, запустите обработку удаления помеченных объектов.

Где найти обработку

  • Бухгалтерия 3.0: Администрирование → Обслуживание, группа «Корректировка данных» → Удаление помеченных объектов.
  • УТ 11, КА 2, ERP: НСИ и администрирование → Администрирование → Обслуживание, та же группа.
  • Любая конфигурация: Главное меню → Все функции → Обработки → Удаление помеченных объектов.

Порядок работы

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

На большой клиент-серверной базе проверка ссылок идёт долго — от минут до часов. Её лучше запускать вне рабочего времени. Для файловой базы с несколькими пользователями то же правило: пока идёт обработка, коллеги будут ждать.

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

Если в списке «не удалены» стоит контрагент

Это не сбой, а защита. Раскройте строку: обработка перечислит документы и записи, которые держат элемент. Дальше два пути — снять пометку и оставить карточку или перейти к способу 3.

Способ 3. Перенести документы на другого контрагента или объединить дубли

Ссылки мешают удалению, если на контрагенте есть документы. Пока они есть, карточку не убрать. Их надо перевесить на другого контрагента — вручную или через объединение.

Объединение дублей

Классическая ситуация: «ООО Ромашка» и «Ромашка ООО» с одним ИНН, документы разнесены по обоим. В типовых конфигурациях на БСП есть механизм замены и объединения элементов:

  1. В списке контрагентов выделите оба элемента (Ctrl + щелчок).
  2. В меню Еще командной панели выберите команду объединения выделенных элементов.
  3. Укажите, какой элемент оставить основным.
  4. Запустите объединение. Программа заменит ссылку на дубль во всех документах, договорах и регистрах, а дубль пометит на удаление или удалит.

Для массовой чистки есть обработка Поиск и удаление дублей (в БП 3.0 — Администрирование → Обслуживание → Корректировка данных). Она сама ищет совпадения по ИНН и наименованию и предлагает пары для объединения.

При объединении меняются проведённые документы, в том числе в закрытых периодах. Если стоит дата запрета изменения (Администрирование → Пользователи и права → Даты запрета изменения), её придётся временно сдвинуть. Перед этим убедитесь, что не меняете сданную отчётность: у дубля мог быть другой КПП, и книга покупок за прошлый квартал разойдётся с декларацией.

Ручной перенос документов

Если документов мало или «правильный» контрагент отличается от удаляемого (другой ИНН, другая организация), безопаснее перевесить их руками:

  1. В отчёте поиска ссылок откройте каждый документ.
  2. Замените контрагента и договор.
  3. Проведите документ.
  4. Когда ссылок не останется, пометьте контрагента на удаление и запустите способ 2.

Порядок важен: сначала меняйте документы поступления и реализации, потом оплаты и взаимозачёты. Иначе на счетах 60 и 62 временно возникнут «обратные» сальдо, и закрытие месяца выдаст ошибки.

Когда лучше не удалять вовсе

Если по контрагенту честно велась работа — договоры, оплаты, сданные декларации, — удалять его незачем. Карточка нужна для истории: актов сверки, налоговых проверок, восстановления первички.

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

Какой у вас случай с контрагентом?

Способ 4. Обработка с кодом для массового удаления

Этот способ нужен, когда лишних контрагентов сотни: например, обмен с интернет-магазином создал по карточке на каждого розничного покупателя. Руками их не пометить.

Правило одно: код только ставит пометку, а удаляет стандартная обработка с проверкой ссылок. Метод Удалить() у объекта стирает элемент без проверки ссылочной целостности, и документы останутся с битыми ссылками.

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

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|	Контрагенты.Ссылка КАК Ссылка
|ИЗ
|	Справочник.Контрагенты КАК Контрагенты
|ГДЕ
|	Контрагенты.Родитель = &Группа
|	И Контрагенты.ИНН = """"
|	И НЕ Контрагенты.ПометкаУдаления
|	И НЕ Контрагенты.ЭтоГруппа";
Запрос.УстановитьПараметр("Группа",
	Справочники.Контрагенты.НайтиПоНаименованию("Покупатели с сайта"));

Выборка = Запрос.Выполнить().Выбрать();
Счетчик = 0;
Пока Выборка.Следующий() Цикл
	Объект = Выборка.Ссылка.ПолучитьОбъект();
	Объект.УстановитьПометкуУдаления(Истина);
	Счетчик = Счетчик + 1;
КонецЦикла;

Сообщить(СтрШаблон("Помечено на удаление: %1", Счетчик));

После выполнения откройте удаление помеченных объектов и пройдите способ 2. Контрагенты, на которых есть документы, останутся в списке неудалённых — это нормально.

Код запускают сначала на копии базы. Проверьте отбор: одна неверная строка в условии ГДЕ пометит нужных поставщиков. Пометку потом можно снять, но искать их среди сотен — долго.

Прямые запросы к таблицам СУБД (SQL Server, PostgreSQL) для удаления контрагентов не используйте. Платформа хранит ссылки во многих таблицах и регистрах, а ручное удаление строки из таблицы справочника гарантированно оставит базу с битыми ссылками и может нарушить итоги регистров.

Частые ошибки при удалении контрагента

  • ❌ Удалили «всё помеченное» без просмотра. Вместе с контрагентом ушли чужие документы, помеченные коллегой «на подумать». Помогает только резервная копия.
  • ❌ Перенесли документы прошлого года на другого контрагента. Книга покупок за сданный период изменилась, а уточнённая декларация не подана. Перенос в закрытых периодах — только после согласования с главным бухгалтером.
  • ❌ Объединили контрагентов с разными КПП. Головная организация и обособленное подразделение — это разные карточки. После объединения пропадает КПП подразделения в счетах-фактурах.
  • ❌ Удалили карточку, но в обмене она осталась. Если база синхронизируется с УТ, CRM или банком, контрагент вернётся при следующем обмене. Сначала уберите его в источнике или исключите из правил обмена.
  • ❌ Удалили контрагента программным Удалить(). В документах появляется <Объект не найден>. Исправить можно только восстановлением из копии или ручной перепривязкой каждого документа.

Вопросы об удалении контрагентов

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