Справочники и Данные · 9 мин
Как в 1С изменить контрагента во всех документах
Как массово заменить контрагента во всех документах 1С: поиск и замена значений, обработки, типовые и самописные конфигурации, риски и проверка результата.
Замена контрагента во всех документах — типовая задача при реорганизации контрагента, исправлении ошибочного заведения дублей или переносе истории на новую карточку. Ручное перепроведение каждого документа подходит только при нескольких записях: при сотнях документов нужны штатные механизмы групповой обработки.
В типовых конфигурациях 1С (Бухгалтерия предприятия, Управление торговлей, ERP) для этого предусмотрены обработки «Поиск и замена значений» и «Групповое изменение реквизитов». В самописных и сильно доработанных конфигурациях может потребоваться программная замена через встроенный язык.
Ключевой риск операции — подмена контрагента в закрытых периодах и в документах, которые уже ушли в отчётность. Поэтому любая массовая замена начинается с резервной копии и анализа, где именно используется элемент справочника.
Когда требуется замена контрагента и какие есть варианты
Ситуации бывают разные, и от них зависит выбор инструмента. Самая частая — обнаружен дубль контрагента: одна и та же организация заведена дважды, и документы размазаны по двум карточкам. Здесь задача — объединить элементы и перенести все ссылки на одну карточку.
Второй сценарий — реорганизация контрагента: сменилось юридическое лицо, и новые документы должны идти на новую карточку, а старые остаются на прежней. В этом случае массовая замена по всей базе недопустима — заменяют только документы после даты реорганизации.
Третий сценарий — ошибка оператора: документы завели на неверного контрагента и нужно исправить за конкретный период или по конкретному договору. Здесь работает групповое изменение реквизитов с отбором.
Сравнение вариантов
Подходит для объединения дублей: заменяет все ссылки на элемент по всей базе. Ограничение — нельзя задать отбор по периоду или виду документа.
Подходит для точечной замены в документах по отбору (период, организация, вид документа). Не затрагивает регистры и ссылки в других справочниках.
Для нестандартных конфигураций и сложных условий. Требует навыков разработки и тестирования на копии базы.
Подготовка: резервная копия и анализ ссылок
Перед любой массовой заменой сделайте резервную копию базы. Для файловой базы достаточно скопировать каталог с файлом 1Cv8.1CD в момент, когда пользователи не работают. Для клиент-серверной базы используйте выгрузку через конфигуратор (Администрирование → Выгрузить информационную базу) или штатные средства СУБД.
Далее оцените масштаб: в карточке контрагента откройте «Ещё» → «Найти использование» (или аналогичную команду «Поиск ссылок» в конфигураторе). Вы увидите список всех объектов, где встречается элемент: документы, справочники, регистры сведений.
Обратите внимание на даты документов. Если часть из них находится в закрытом периоде, за который сдана отчётность, замена контрагента изменит данные прошлых периодов. Это может привести к расхождениям с уже сданными декларациями и актами сверок.
Замена через «Поиск и замена значений»
Это основной инструмент для объединения дублей. В типовых конфигурациях обработка находится в разделе «Администрирование» → «Обслуживание» → «Корректировка данных» → «Поиск и замена значений». В некоторых версиях она доступна только пользователю с правами администратора.
Порядок работы: укажите, что заменяете (контрагента-дубль), и на что заменяете (основную карточку). Обработка покажет список всех найденных ссылок. Проверьте список глазами: там могут оказаться объекты, которые трогать нельзя.
После запуска обработка заменит ссылки и, если установлен соответствующий флаг, пометит дубль на удаление. Замена выполняется в транзакции, но при большом объёме данных может занять заметное время и заблокировать работу пользователей — выполняйте её в нерабочее время.
- 1Сделайте резервную копию базы
- 2Откройте Администрирование → Обслуживание → Поиск и замена значений
- 3Укажите заменяемый элемент (дубль) и элемент-замену (основную карточку)
- 4Проверьте список найденных ссылок, снимите флажки с объектов, которые менять нельзя
- 5Запустите замену и дождитесь завершения
- 6Проверьте результат в отчётах по контрагенту и удалите дубль через пометку на удаление
Групповое изменение реквизитов для точечной замены
Когда менять нужно не всё подряд, а документы по условию, используйте обработку «Групповое изменение реквизитов» (в ряде конфигураций — «Администрирование» → «Обслуживание» → «Корректировка данных», либо вызывается из списка документов кнопкой «Изменить»).
Сначала задайте отбор: вид документа, период, организация, текущий контрагент. Обработка покажет количество документов, попадающих под условие. Затем выберите реквизит «Контрагент» и укажите новое значение.
Учтите ограничение: обработка меняет реквизит в шапке, но не перезаполняет зависимые данные — договор, расчётные счета, адреса в печатных формах. Если у нового контрагента другой договор, эти поля придётся исправлять дополнительно.
Программная замена в нестандартных конфигурациях
Если конфигурация самописная или типовые обработки вырезаны, замену выполняют через встроенный язык. Логика такая: найти все ссылки на элемент через метод НайтиПоСсылкам, затем в цикле открыть каждый объект, подменить реквизит и записать.
Примерный каркас кода: получаем таблицу ссылок через НайтиПоСсылкам с массивом из одного элемента — старого контрагента. Далее для каждой строки определяем тип объекта, получаем объект методом ПолучитьОбъект, заменяем реквизит «Контрагент» и записываем. Документы записываем в режиме записи, а не проведения, чтобы не перепроводить закрытые периоды.
Такую обработку обязательно отлаживают на копии базы. Опасные места: объекты с заблокированными периодами, документы, участвующие в обменах (замена уйдёт в другую базу при следующей синхронизации), и регистры, где контрагент хранится как измерение — их НайтиПоСсылкам тоже найдёт, и записи потребуют отдельной обработки.
Если база участвует в обмене (РИБ, обмен с сайтом, синхронизация между конфигурациями), массовая замена контрагента зарегистрирует изменения для всех узлов и может вызвать большой пакет обмена. Согласуйте замену с администратором обменов и выполняйте её до очередной синхронизации.
Проверка результата и типичные ошибки
После замены убедитесь, что ссылок на старый элемент не осталось: повторно выполните поиск ссылок на дубль. Пустой результат — признак чистой замены. Затем сформируйте оборотно-сальдовую ведомость или отчёт по взаиморасчётам по новому контрагенту и сверьте сальдо с тем, что было на двух карточках до объединения.
Проверьте несколько документов вручную: откройте, убедитесь, что контрагент заменён, договор соответствует новому контрагенту, печатная форма выводит корректные реквизиты.
Как проверить результат
Ссылки не найдены
Остались документы или регистры со старым контрагентом
Сальдо совпадает с суммой сальдо двух карточек до замены
Расхождения — часть документов не заменена
Контрагент и договор соответствуют друг другу
Договор принадлежит старому контрагенту
Частые вопросы
Можно ли заменить контрагента только в проведённых документах?
Да. В обработке «Групповое изменение реквизитов» добавьте в отбор условие «Проведён = Да». В обработке «Поиск и замена значений» такого фильтра нет — там придётся вручную снимать флажки с непроведённых документов в списке найденных ссылок.
Что делать, если после замены документ не проводится?
Чаще всего причина в несоответствии договора новому контрагенту или в дате запрета редактирования. Откройте документ, проверьте договор и организацию, при необходимости замените договор на принадлежащий новому контрагенту. Если период закрыт датой запрета — согласуйте временное изменение даты с администратором.
Заменится ли контрагент в регистрах и накоплении?
Обработка «Поиск и замена значений» заменяет ссылки в том числе в измерениях и реквизитах регистров, если они содержат прямую ссылку на контрагента. Однако движения документов по регистрам пересчитываются только при перепроведении, поэтому после замены реквизита в шапке документа его движения могут остаться со старым контрагентом до перепроведения.
Как удалить дубль контрагента после замены?
Пометьте элемент на удаление, затем выполните «Администрирование» → «Обслуживание» → «Удаление помеченных объектов». Если удаление блокируется, значит где-то остались ссылки — система покажет их список, замените их и повторите удаление.
Есть ли ограничения по правам для такой замены?
Да. Обработки корректировки данных обычно доступны только пользователям с ролью администратора или полными правами. Рядовому бухгалтеру эти команды недоступны, и это осознанное ограничение: массовая замена ссылок — административная операция.
Что важно запомнить
Для объединения дублей используйте «Поиск и замена значений», для точечной замены по условию — «Групповое изменение реквизитов». Перед операцией делайте резервную копию, после — проверяйте отсутствие ссылок на старую карточку, корректность договоров и сальдо в отчётах. Закрытые периоды и базы с обменами требуют отдельного согласования.