Odin | База знаний 1С

Как в 1С настроить полнотекстовый поиск с использованием MS SQL?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

Как настроить чтобы полнотекстовый поиск 1с использовал полнотекстовый поиск MS SQL?



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Для настройки полнотекстового поиска в 1С с использованием полнотекстового поиска MS SQL необходимо выполнить следующие шаги:

1. **Подготовка MS SQL сервера:**

- Убедитесь, что на сервере MS SQL установлен и активирован компонент полнотекстового поиска (Full-Text Search).
- Проверьте, что полнотекстовый поиск включен для вашей базы данных.
- Создайте полнотекстовый каталог и полнотекстовые индексы на нужных таблицах и полях, которые будут использоваться для поиска.

2. **Настройка информационной базы 1С:**

- В конфигурации 1С необходимо включить использование полнотекстового поиска платформы.
- В разделе «Администрирование» → «Общие настройки» найдите параметр «Полнотекстовый поиск данных» и включите его.
- В свойствах информационной базы (в конфигураторе или через администрирование) укажите, что полнотекстовый поиск будет использоваться на стороне СУБД (MS SQL).

3. **Настройка параметров подключения к MS SQL:**

- В строке подключения к базе данных 1С (обычно в файле `1cv8.1cd` или в настройках подключения) убедитесь, что указаны правильные параметры для подключения к MS SQL.
- Проверьте, что пользователь базы данных имеет права на использование полнотекстового поиска (создание и использование полнотекстовых индексов).

4. **Обновление и построение полнотекстового индекса в MS SQL:**

- После создания полнотекстовых индексов в MS SQL необходимо их построить и обновить.
- Это можно сделать через SQL Server Management Studio (SSMS) или с помощью SQL-запросов.

5. **Использование полнотекстового поиска в 1С:**

- В 1С полнотекстовый поиск будет автоматически использовать возможности MS SQL, если он включен и настроен.
- При выполнении поиска в 1С запросы будут транслироваться в полнотекстовые запросы MS SQL, что значительно ускорит поиск по большим объемам данных.

6. **Дополнительные рекомендации:**

- В некоторых конфигурациях 1С может потребоваться доработка кода или настройка обработки поиска, чтобы использовать полнотекстовые индексы MS SQL напрямую.
- Рекомендуется протестировать работу полнотекстового поиска на тестовой базе перед внедрением в продуктив.

---

### Пример создания полнотекстового индекса в MS SQL для таблицы 1С

sql
-- Создание полнотекстового каталога (если еще не создан)
CREATE FULLTEXT CATALOG ftCatalog AS DEFAULT;

-- Создание полнотекстового индекса на таблице, например, Document_Table
CREATE FULLTEXT INDEX ON Document_Table
(
    TextColumn1 LANGUAGE 1033, -- 1033 - английский, замените на нужный язык
    TextColumn2 LANGUAGE 1033
)
KEY INDEX PK_Document_Table -- имя первичного ключа таблицы
ON ftCatalog
WITH CHANGE_TRACKING AUTO;

---

### Важные моменты:

- Полнотекстовый поиск MS SQL работает только с таблицами, у которых есть первичный ключ.
- Язык индексации должен соответствовать языку данных.
- В 1С начиная с версии платформы 8.3.10 и выше полнотекстовый поиск поддерживает интеграцию с полнотекстовым поиском MS SQL.

---

Рекомендую посмотреть здесь:
https://infostart.ru/public/1679552/
https://docs.microsoft.com/ru-ru/sql/relational-databases/search/full-text-search?view=sql-server-ver16
https://wonderland.v8.1c.ru/blog/uluchshenie-relevantnosti-polnotekstovogo-poiska/

Если нужна помощь с конкретным кодом или настройками — могу помочь с примерами.



   
ОтветитьЦитата