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