Разработка и Конфигурация · 9 мин
Как найти строку в модуле 1С: полное руководство по поиску в конфигураторе
Как найти строку в модуле 1С: локальный поиск Ctrl+F, глобальный поиск по конфигурации, поиск процедур и функций, замена текста и типичные ошибки.
Поиск строки в модуле 1С — одна из самых частых операций при доработке конфигурации. Текстовый курсор в конфигураторе ищет как внутри одного открытого модуля, так и по всем модулям конфигурации сразу, включая модули объектов, форм, общих модулей и внешних обработок.
Выбор инструмента зависит от задачи. Если нужно найти фрагмент кода в текущем окне редактора, достаточно локального поиска через Ctrl+F. Если нужно понять, где вообще в конфигурации используется процедура, переменная или строковый литерал — потребуется глобальный поиск через Ctrl+Shift+F. Для навигации по процедурам и функциям большого модуля удобнее список методов Ctrl+Alt+P.
Ниже разобраны все основные способы поиска: комбинации клавиш, настройки параметров, нюансы регистра и целых слов, а также типичные ошибки, из-за которых поиск «не находит» очевидно существующий текст.
Локальный поиск в открытом модуле (Ctrl+F)
Откройте нужный модуль в конфигураторе (например, модуль объекта документа или общий модуль) и нажмите Ctrl+F либо выберите пункт меню «Правка → Найти». В поле «Что искать» введите искомую строку — это может быть фрагмент кода, имя переменной или текст сообщения.
Кнопка «Найти» выполняет поиск от текущей позиции курсора вниз. Если нужно искать вверх по модулю, снимите или установите соответствующий флаг направления в диалоге. Повторный поиск без открытия диалога выполняется клавишей F3 (вперёд) или Shift+F3 (назад) — это ускоряет перебор всех вхождений строки.
Параметры диалога поиска влияют на результат:
- Учитывать регистр — по умолчанию выключен, поэтому «Сообщить» и «сообщить» считаются одинаковыми. Включайте, когда ищете точное написание.
- Слово целиком — ищет только отдельные слова. Полезно, чтобы поиск «Сумма» не выдавал «СуммаНДС» и «СуммаДокумента».
- Регулярные выражения — включает режим шаблонов для сложных конструкций.
- 1Откройте нужный модуль в конфигураторе
- 2Нажмите Ctrl+F и введите искомую строку
- 3При необходимости включите «Слово целиком» или «Учитывать регистр»
- 4Нажмите «Найти», затем перебирайте вхождения клавишей F3
- 5Проверьте, что найдено нужное место: контекст вокруг строки соответствует задаче
Глобальный поиск по всей конфигурации (Ctrl+Shift+F)
Когда неизвестно, в каком именно модуле находится строка, используйте глобальный поиск: Ctrl+Shift+F или меню «Правка → Глобальный поиск». Он просматривает все модули конфигурации: общие модули, модули объектов, менеджеров, форм, команд, а также макеты и другие текстовые элементы.
В диалоге глобального поиска задаётся область поиска. Можно искать по всей конфигурации, только в открытых модулях, или ограничить область выбранными объектами в дереве конфигурации — для этого предварительно выделите нужные объекты и отметьте соответствующую опцию. Ограничение области заметно ускоряет поиск в больших конфигурациях.
Результаты выводятся в отдельном окне списком: объект, модуль, номер строки и фрагмент текста. Двойной щелчок по строке результата открывает модуль ровно на найденном месте. Окно результатов не блокирует работу — можно открывать несколько найденных мест подряд.
Быстрый переход к процедуре или функции (Ctrl+Alt+P)
Если цель — не строка, а конкретный метод, в большом модуле удобнее список процедур и функций. Нажмите Ctrl+Alt+P внутри модуля: откроется перечень всех методов с указанием типа (процедура, функция) и области. Список можно фильтровать, просто начав вводить имя метода.
В том же диалоге доступна сортировка по алфавиту или по порядку следования в модуле, а также фильтр по областям (#Область). Для модулей на несколько тысяч строк это самый быстрый способ навигации — быстрее, чем перебор вхождений через Ctrl+F.
Дополнительно работает переход к определению: поставьте курсор на имя вызываемой процедуры и нажмите F12. Конфигуратор откроет модуль, где метод объявлен, даже если это другой общий модуль.
Сравнение способов поиска
Подходит для поиска строки в открытом модуле. Ограничение: не видит другие модули.
Ищет по всей конфигурации. Ограничение: медленнее на больших базах, не охватывает внешние файлы.
Быстрая навигация по процедурам и функциям текущего модуля. Не ищет произвольный текст.
Мгновенный переход к объявлению метода или переменной. Работает только для известных конфигуратору идентификаторов.
Поиск и замена текста (Ctrl+H)
Для замены строки используется диалог «Правка → Заменить» или комбинация Ctrl+H. Он работает как в текущем модуле, так и глобально — при глобальной замене будьте особенно внимательны, так как изменения затронут все модули конфигурации.
Перед массовой заменой включайте «Слово целиком», если меняете имя переменной или метода: иначе замена «Сумма» на «ИтогСумма» испортит все вхождения «СуммаНДС». Для переименования методов безопаснее использовать встроенный рефакторинг, если он доступен в вашей версии платформы, либо выполнять замену с ручным подтверждением каждого вхождения.
Регулярные выражения и поиск в EDT
В конфигураторе диалог поиска поддерживает регулярные выражения — включите соответствующий флажок. Это позволяет искать шаблоны: например, все вызовы с любым параметром или строки, начинающиеся с определённого префикса. Синтаксис шаблонов в конфигураторе имеет свои особенности, поэтому сложные выражения проверяйте сначала на простом примере.
В среде разработки 1C:EDT поиск организован иначе: локальный — Ctrl+F, глобальный поиск по проекту — Ctrl+H с выбором вкладки, плюс семантический поиск ссылок на объект метаданных через контекстное меню «Поиск ссылок». Если вы перешли с конфигуратора на EDT, привычный Ctrl+Shift+F там выполняет другую функцию.
Проверка результата и частые проблемы
Признак корректного поиска — найденная строка находится в ожидаемом контексте: внутри нужной процедуры, в правильном модуле объекта. Если поиск выдаёт слишком много совпадений, сузьте условия: включите «Слово целиком», добавьте к строке окружающий контекст (например, скобку или пробел) или ограничьте область поиска конкретными объектами.
Если строка заведомо существует, но не находится, проверьте три вещи: флажки регистра и целого слова, отсутствие лишних пробелов в поле поиска и правильность области поиска. Также учитывайте, что текст в макетах и строковых константах может содержать переносы строк, из-за которых длинная фраза разбита на несколько литералов с символом «|».
Как проверить результат поиска
Строка находится в нужной процедуре и модуле
Найдено совпадение в неподходящем месте — уточните условия поиска
Число совпадений соответствует ожиданиям по логике конфигурации
Вхождений подозрительно много или ноль — проверьте флажки и область поиска
Конфигурация обновляется без синтаксических ошибок после замены
После замены появились ошибки проверки — откатитесь из сохранённого файла
Часто задаваемые вопросы
Как найти все места, где вызывается конкретная процедура?
Поставьте курсор на имя процедуры и используйте глобальный поиск (Ctrl+Shift+F) с включённым «Слово целиком». Альтернатива — контекстный поиск ссылок в 1C:EDT, который находит именно вызовы, а не любые текстовые совпадения.
Почему Ctrl+F не находит строку, которая точно есть в модуле?
Чаще всего мешают включённые флажки «Учитывать регистр» или «Слово целиком», либо лишний пробел, скопированный вместе со строкой. Сбросьте параметры поиска и введите фрагмент вручную.
Можно ли искать сразу во всех внешних обработках?
Штатный глобальный поиск конфигуратора не индексирует внешние файлы. Откройте каждую обработку и ищите внутри неё, либо используйте поиск по файлам средствами операционной системы, если обработки хранятся в текстовом виде (например, выгружены в исходники).
Как найти строку в модуле формы, если открыт модуль объекта?
Модуль формы и модуль объекта — разные тексты. Откройте форму объекта в дереве конфигурации и перейдите на вкладку «Модуль», либо используйте глобальный поиск — он охватывает модули форм автоматически.
Чем замена через Ctrl+H опасна в большой конфигурации?
Без флажка «Слово целиком» замена затрагивает все вхождения подстроки, включая части других идентификаторов. Всегда сохраняйте конфигурацию в файл перед массовой заменой и после неё запускайте проверку конфигурации.
Как быстро перейти к нужной строке по её номеру?
Используйте переход к строке: в конфигураторе это доступно через меню «Правка → Перейти» или комбинацию Ctrl+G — введите номер строки, и курсор переместится на неё.
Что важно запомнить
Ctrl+F — поиск в текущем модуле, Ctrl+Shift+F — по всей конфигурации, Ctrl+Alt+P — навигация по методам, F12 — переход к определению. Перед глобальной заменой сохраняйте конфигурацию в файл и проверяйте флажки «Слово целиком» и «Учитывать регистр».