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