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