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