Переход с платформы 1С 8.2 на управляемые формы 1С 8.3 принес множество полезных изменений, однако некоторые привычные инструменты администраторов и разработчиков изменили свое местоположение или вовсе исчезли из стандартной поставки. Один из таких инструментов — классическая обработка «Поиск и замена значений» (файл ПоискИЗаменаЗначений.epf). Многие пользователи конфигураций «Управление торговлей 11», «Бухгалтерия предприятия 3.0» и «Комплексная автоматизация» сталкиваются с тем, что не могут найти эту обработку ни на диске ИТС, ни в самой программе.
В этой статье мы подробно разберем, почему фирма 1С отказалась от классической обработки, какими встроенными инструментами её заменить и как правильно выполнять точечную замену ссылок и текстовых данных в современных конфигурациях.
Во времена обычных форм на платформе 1С 8.2 обработка «Поиск и замена значений» была незаменимым инструментом для ручной очистки базы данных. Она позволяла напрямую переписать ссылки на объекты (например, заменить одного контрагента на другого во всех документах и проводках). Однако с развитием Библиотеки стандартных подсистем (БСП) разработчики 1С решили унифицировать этот процесс и сделать его более безопасным для рядовых пользователей. Прямая перезапись ссылок старым инструментом часто приводила к нарушению ссылочной целостности базы данных и ошибкам в регистрах сведений.
Официально функции старой обработки теперь переложены на стандартный механизм «Поиск и удаление дублей». Рассмотрим подробнее, как использовать его в качестве полноценного аналога старой обработки, а также разберем альтернативные пути решения задачи.
Большинство пользователей считают, что стандартный поиск дублей предназначен только для автоматического поиска элементов с одинаковыми наименованиями. На самом деле этот инструмент можно легко настроить для жесткой ручной замены одной конкретной ссылки на другую во всей базе данных (включая документы, движения и проводки). Давайте разберем этот процесс по шагам:
Контрагенты, Договоры или Номенклатура).Ссылка, укажем вид сравнения В списке и выберем ровно два элемента — тот, который мы хотим заменить (ошибочный), и тот, на который мы хотим заменить (правильный).В этот момент платформа выполнит колоссальную работу: она обойдет все документы, регистры сведений, регистры накопления и проводки, где использовался ошибочный элемент, и заменит его на правильный. После завершения процесса ошибочный элемент будет помечен на удаление, а ссылочная целостность вашей базы данных останется идеальной.
Если вам категорически неудобен стандартный механизм поиска дублей (например, если перед вами стоит задача массово заменить десятки разных пар объектов и при этом вы не хотите помечать исходные элементы на удаление), можно воспользоваться внешними обработками. На профильных интернет-ресурсах разработчики выкладывают адаптированные версии старой обработки под управляемые формы 1С 8.3 (часто они называются «Поиск и замена значений 3.0» или «Универсальный поиск и замена объектов»).
Для запуска такой обработки выполните следующие действия:
.epf.Важно: Перед запуском любых внешних обработок, изменяющих данные напрямую, обязательно создавайте резервную копию базы данных!
Иногда перед пользователями встает другая задача: не заменить ссылки на один элемент ссылками на другой, а массово переименовать элементы справочника по определенному правилу. Например, изменить часть наименования номенклатуры с «Товар 123 (10шт)» на «Товар 321 (10 шт.)».
Для решения этой задачи классический поиск и замена ссылок не подходит, так как здесь мы работаем не с объектами-ссылками, а с текстовым реквизитом Наименование. Рассмотрим три эффективных метода решения этой проблемы.
Этот способ является наиболее гибким и не требует установки сторонних программ. Он доступен администраторам прямо в режиме предприятия:
Номенклатура (или любой другой необходимый справочник). Настроим отбор, чтобы изменения затронули только нужные позиции.
Объект.Наименование = СтрЗаменить(Объект.Наименование, "123 (10шт)", "321 (10 шт.)");
СтрЗаменить для корректировки текста в наименовании и запишет обновленные карточки товаров.Для пользователей, которые опасаются самостоятельно писать программный код, существуют готовые внешние обработки для массового переименования элементов (например, «Поиск и замена подстроки в наименовании»). Такие обработки предоставляют простой графический интерфейс: вы указываете текстовое поле для поиска, вводите искомую подстроку и текст для замены. Обработка самостоятельно выполнит перезапись элементов справочника.
Если правил замены очень много и они сложные, самым простым выходом будет использование табличного редактора Excel:
Код или Артикул, а также колонку Наименование.Код (или Артикул) является ключом поиска, а поле Наименование подлежит обновлению.Подводя итог, можно сказать, что хотя классическая обработка «Поиск и замена значений» ушла в прошлое вместе с обычными формами платформы 8.2, современные конфигурации на базе 1С 8.3 предоставляют куда более безопасные, гибкие и мощные инструменты для контроля и изменения данных в информационной базе.