Обработка "Глобальный поиск в модулях конфигурации"
Расширение глобального поиска / замены в конфигураторе. Отличие в предоставлении ряда дополнительных возможностей по поиску:
- Возможность наложения условий И, ИЛИ, НЕ.
- Возможность поиска только в процедуре/функции с указанным именем.
- Возможность поиска только в названии процедуры / функции.
- Не осуществлять поиск в комментариях.
- Возможность замены на текстовый блок (с переносами строк).
- Использование переменных при поиске и замене.
- Возможность пакетного поиска.
Пример задачи, которую можно выполнить с помощью данной обработки: Во всех отчетах, в конце каждой процедуры СформироватьОтчет() добавить вызов функции ОбщегоНазначения.УстановитьСчетчикВызововОбъекта(Метаданные().ПолноеИмя()). Кроме тех процедур, в которых вывод табличного документа осуществляется вызовом общей функции ТиповыеОтчеты.СформироватьТиповойОтчет() (т. к. в ней уже есть вызов счетчика).
Предварительно.
Перед использованием необходимо «Выгрузить файлы конфигурации» в каталог на диске. Имеющаяся в 8.3 команда «Конфигурация –> Выгрузить конфигурацию в файлы» не подходит. Необходимо использовать команду «Выгрузить файлы конфигурации».
Важно! Из конфигуратора в платформе 8.3 исключены команды «Выгрузить файлы конфигурации» и «Загрузить файлы конфигурации». Однако, с помощью настройки главного меню можно отобразить эти команды в меню и пользоваться ими.
После замены загрузка измененных модулей / макетов конфигурации осуществляется через меню: "Конфигурация -> Загрузить файлы конфигурации".
Ограничения.
- Предназначено для использования на обычных формах.
- Поиск осуществляется лучше всего в модулях и макетах СКД.
- Невозможно использование скобок при наложении условий И, ИЛИ.
Порядок использования.
Краткое описание порядка поиска.
- Указать каталог, в котором находятся заранее выгруженные файлы конфигурации.
- Указать операцию. Возможные варианты: стандартный поиск, пакетный поиск, замена.
Закладка "Стандартный поиск"
- В табличной части "Строки поиска" указать строку или строки, которую необходимо найти в модулях конфигурации.
Самая первая строка является ключевой строкой поиска, многие настройки поиска отталкиваются от нее, например, возможность поиска остальных строк рядом с ней.
Возможные настройки:- Операция - логическое условие, соединяющее условие в текущей строке с предыдущим. Не используется для 1 строки. Возможные значения: И, ИЛИ.
- Строка поиска - искомый текст
- Комментарий - краткое пояснение смысла строки
- Пространство поиска:
- Процедура - имя процедуры/функции, в которой осуществлять поиск. Если не указано, то поиск осуществляется в любой процедуре/функции или вне нее.
- В процедуре целиком - флаг, указывающий, что поиск нужно осуществлять в тексте той процедуры/функции, в которой найдена 1 строка поиска. Не актуален для 1 строки поиска.
- В названии процедуры - флаг, указывающий, что Строку поиска нужно искать только в названиях процедур и функций. Не рекомендуется использовать одновременно с заполнением ячейки в колонке "Процедура" (противоречие по сути поиска).
- До строки поиска - количество строк до номера найденной по 1 условию строки. В пределах указанного количества строк выполняется поиск текущей строки поиска. Не актуально для 1 строки поиска. Если 0, то поиск осуществляется только в той же самой строке.
- После строки поиска - количество строк после номера найденной по 1 условию строки. В пределах указанного количества строк выполняется поиск текущей строки поиска. Не актуально для 1 строки поиска. Если 0, то поиск осуществляется только в той же самой строке.
- В табличной части "Исключать найденные строки, если рядом встретилось (операция НЕ):" указать строку, при нахождении которой рядом с искомой, та исключается из результатов поиска.
Возможные настройки:- Операция - логическое условие, соединяющее условие в текущей строке с предыдущим. Не используется для 1 строки. Возможные значения: И, ИЛИ.
- Строка поиска - исключаемый текст
- Комментарий - краткое пояснение смысла строки
- Пространство поиска:
- В процедуре целиком - флаг, указывающий, что поиск нужно осуществлять в тексте той процедуры/функции, в которой найдена 1 строка поиска. Не актуален для 1 строки поиска.
- В названии процедуры - флаг, указывающий, что Строку поиска нужно искать только в названиях процедур и функций. Не рекомендуется использовать одновременно с заполнением ячейки в колонке "Процедура" (противоречие по сути поиска).
- До строки поиска - количество строк до номера найденной по 1 условию строки. В пределах указанного количества строк выполняется поиск текущей строки поиска. Не актуально для 1 строки поиска. Если 0, то поиск осуществляется только в той же самой строке.
- После строки поиска - количество строк после номера найденной по 1 условию строки. В пределах указанного количества строк выполняется поиск текущей строки поиска. Не актуально для 1 строки поиска. Если 0, то поиск осуществляется только в той же самой строке.
- Нажать кнопку "Найти строки". Результат поиска будет отображен на закладке "Найденные строки".
Полное описание порядка поиска.
- Поиск в комментариях. Управляет порядком поиска в комментариях. Возможные значения: включать, исключать, только в комментариях. По умолчанию установлено значение "Исключать", при котором поиск в комментариях не осуществляется. Все настройки поиска должны выполняться до нажатия кнопки "Найти строки".
- Учитывать регистр - указывает, что искать нужно строки в точном соответствии с регистром или искать с любым регистром. Аналог типового флага в глобальном поиске в конфигурации.
- Искать слово целиком - флаг указывает, что строка поиска не должна быть часть другого слова, а должна быть отдельным словом (перед и после нее должен быть пробел/перевод строки/начало или конец строки и т.д.)
- Заменить спецсимволы в XML. В xml некоторые знаки заменяются спецсимволами, например, >, <. Это затрудняет поиск, т.к. делает невозможным поиск "А < B". Если флаг установлен, то спецсимволы перед поиском преобразуются в привычный нам вид. Но при этом становится невозможна замена найденной строки, поэтому данный режим недоступен для операции "Замена".
- Ограничить пространство поиска процедурой, в которой найдена строка поиска (первая - для ТЧ Строки поиска). При установке данного флага поиск всех строк в табличных частях "Строки поиска" и "Исключать найденные строки..." осуществляется в той же процедуре/функции, в которой найдена 1 строка поиска.
- Параметры предварительного просмотра. Они не имеют отношения к поиску и управляются настройками просмотра текста модуля рядом с найденными строками.
- Использовать переменную - при установке данного флага предоставляется возможность использования переменной для поиска и замены. А именно: найденное рядом с 1 строкой поиска слово записывается в переменную. Затем эту переменную можно подставить в строку замены.
- Переменная - имя переменной, в которую будет записано слово. Придуманное имя должно быть уникальным и иметь нулевую вероятность встретиться в тексте модуля. Впоследствии сохраненное в переменной значение можно будет посмотреть в таблице найденных строк в колонке "Значение переменной".
- Расположение справа или слева от строки поиска
На закладке "Замена" можно в поле "Заменить на:" использовать эту переменную, например, так: "Организация В (&Организации) или &&&Перем.Организация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)"Настройки и результаты поиска можно сохранять как стандартными средствами сохранения реквизитов формы 1С, так и в отдельные файлы - для загрузки их в других базах.z88;
Закладка "Замена".
- Заменить на - строка, на которую будет выполнена замена искомой строки, расположенной в 1 строке табличной части "Строки поиска"
- Кнопка "Выполнить замену всех найденных строк - выполняет замену
- Кнопка "Удалить лишние файлы" - выполняет физическое удаление ранее выгруженных в каталог модулей конфигурации: тех из них, в которых не была найдена искомая строка.
Закладка "Пространство поиска".
На данной закладке расположены настройки отбора модулей конфигурации, участвующих в поиске, а именно: - Отбор по расширению модулей. Возможные значения: .txt (модули), .xml (СКД), .mxl (макеты), .bin (произвольный тип: картинки, данные и др.).
- Отбор по подсистеме
- Кнопка "Отобрать" - выполняет поиск модулей конфигурации, удовлетворяющих отборам
- Кнопка "Разрешить редактирование" - позволяет вручную отредактировать список найденных модулей.
- Кнопка "Исключить старые объекты" - если кнопка нажата, то при отборе модулей исключаются те объекты, в имени, синониме или комментарии которых присутствует подстрока "старый", "не используется" и их вариации.
Закладка "Найденные строки".
На данной закладке расположены найденные в результате поиска строки. По двойному щелчку можно открыть модуль на найденной строке и внести изменения вручную. Найденные строки можно классифицировать: откладывать с указанием комментария, исключать из последующих поисков. - Табличная часть "Найденные строки".
- Кнопка "Отложить" - позволяет отложить найденные строки. При этом она будет перенесена в табличную часть "Отложено" на одноименной закладке. При этом перемещена будет текущая строка, если текущая колонка - №, Текст строки, Значение переменной, № стр. в модуле. Если текущая колонка - Процедура, то будут перемещены все найденные строки с той же процедурой (в том же модуле). Если текущая колонка - имя или класс объекта метаданных, то будет перемещен весь объект метаданных (все найденные строки из него). Если текущая колонка - модуль объекта метаданных, то будут исключены все строки из этого модуля объекта метаданных.
- Кнопка "Исключить" - позволяет исключить текущую найденную строку. При этом она будет перенесена в табличную часть "Исключено" на одноименной закладке. При этом исключена будет текущая строка, если текущая колонка - №, Текст строки, Значение переменной, № стр. в модуле. Если текущая колонка - Процедура, то будут исключены все найденные строки с той же процедурой (в том же модуле). Если текущая колонка - имя или класс объекта метаданных, то будет исключен весь объект метаданных. Если текущая колонка - модуль объекта метаданных, то будут исключены все строки из этого модуля объекта метаданных.
Закладка "Отложено".
На данной закладке расположены найденные строки, которые пользователю временно не нужны, и которые он отложил по кнопке "Отложить". - Кнопка "Открыть файл" - позволяет открыть файл.
- Переместить в исключено - перемещает текущую строку на закладку "Исключено".
Закладка "Исключено".
На данной закладке расположены найденные строки, которые пользователю не нужны, и которые он исключил по кнопке "Исключить". - Кнопка "Открыть файл" - позволяет открыть файл.
- Кнопка "Удалить файлы" - выполняет физическое удаление файлов, соответствующих модулям, представленным в табличной части "Исключено".
Закладка "Файлы".
На данной закладке расположены найденные модули конфигурации, в которых и осуществляется поиск. - Кнопка "Отобрать" - выполняет поиск модулей конфигурации, удовлетворяющих отборам на закладке "Пространство поиска"
Тестирование производилось на платформе 8.3.9.1818.