Skip Navigation LinksALVAO 8.2ALVAO Service DeskImplementace systému v organizaciFull-Text Search Skip Navigation Links. Skip Navigation Links Skip Navigation Links.


Full-Text Search

V SD Console a SD WebApp je možné využívat rychlého vyhledávání pomocí Full-Text Search. K využití této funkce je nutné mít nainstalovanou komponentu Full-Text and Semantics Extractions for Search, která je volitelnou součástí SQL Database Engine. Tuto komponentu lze přidat při prvotní instalaci MS SQL serveru, nebo ji lze doinstalovat přes instalační balíček SQL Server pro libovolnou edici.

Tip:
Doporučujeme si zkontrolovat zapnutí Full-Text Search a pokud není zapnuté, tak ho zapnout. Výrazně to zrychlí prohledávání požadavků.

Kontrola zapnutí Full-Text Search

Instalaci a nastavení lze zkontrolovat použitím SQL příkazu:

IF (1 != ISNULL(fulltextserviceproperty('IsFulltextInstalled'),0)) PRINT N'FTS není nainstalováno.' ELSE
IF (1 != ISNULL((SELECT 1 FROM [dbo].[sysfulltextcatalogs] WHERE name = 'ftCatalogAlvao'),0))
PRINT N'FTS není zapnuto.' ELSE PRINT N'FTS je nainstalováno a zapnuto.'

Pokud se vypíše „FTS není nainstalováno“, je potřeba nainstalovat Full-Text and Semantics Extractions for Search a potom ho nastavit.

Pokud se vypíše „FTS není zapnuto“, je potřeba ho nastavit.

Pokud se vypíše „FTS je nainstalováno a zapnuto“, není již potřeba nic nastavovat.

Tip:
Pokud byla na serveru v době před upgrade na aktuální verzi nainstalována komponenta Full-Text and Semantics Extractions for Search, tak se Full-Text Search zapnulo při upgrade.

Zapnutí Full-Text Search

Pokud není Full-Text Search zapnuto pro použití s databází ALVAO, je potřeba spustit SQL skript k jeho zapnutí. Tento skript nastaví databázi tak, aby pro skloňování slov při prohledávání využila jazyk databáze. Pokud chcete tento jazyk změnit, nahraďte v následujícím skriptu:

DECLARE @languageLCID int;
SELECT TOP 1 @languageLCID = lcid from master..syslanguages where langid = @@DEFAULT_LANGID;
DECLARE @CreateFulltext nvarchar(MAX);
SET @CreateFulltext = N'CREATE FULLTEXT CATALOG ftCatalogAlvao WITH ACCENT_SENSITIVITY = OFF AS DEFAULT; 
CREATE FULLTEXT INDEX ON tHdTicket (sHdTicket LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', mHdTicketNotice LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tHdTicket_iHdTicketId WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tAct (sAct LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', mActNotice LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sActFrom  LANGUAGE '
+CAST(@languageLCID AS nvarchar)+N', sActTo LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sActToEmail LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sActFromEmail LANGUAGE '
+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tAct_iActId WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tDocument (sDocument LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tDocument_iDocumentId WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tHdTicketApproval (ApprovalNotice LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tHdTicketApproval WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tArticle  (HtmlArticleBinary TYPE COLUMN HtmlArticleBinaryExt, sArticle, mArticleAnnotation, mArticle  LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tArticle_iArticleId;
CREATE FULLTEXT INDEX ON tHdTicketApprovalItem (mHdTicketApprovalItemNotes LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tHdTicketApprovalItem WITH STOPLIST OFF;';
EXECUTE sp_executesql @CreateFulltext;

druhý řádek řádkem:

SET @languageLCID = 1029

Číslo 1029 nahraďte číslem národního prostředí, jehož jazyk chcete použít.

Následně upravený skript spusťte. Pokud chcete použít jazyk databáze, nic neměňte a použijte původní skript.

Upozornění:
Vytváření indexů Full-Text Search probíhá asynchronně a může značně zatěžovat disk.
Upozornění:
Pro spuštění tohoto SQL skriptu potřebuje být členem skupiny sysadmin, db_owner, nebo db_ddladmin.

Pokud chcete změnit jazyk Full-Text Search po tom, co bylo zapnuto, je potřeba napřed vypnout Full-Text Search a následně ho znovu zapnout pro jiný jazyk.

Vypnutí Full-Text Search

Pro vypnutí katalogu Full-Text Search proveďte následující SQL skript:

DROP FULLTEXT INDEX ON tHdTicket;
DROP FULLTEXT INDEX ON tAct;
DROP FULLTEXT INDEX ON tDocument;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'tArticle')
DROP FULLTEXT INDEX ON tArticle;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'tHdTicketApproval')
DROP FULLTEXT INDEX ON tHdTicketApproval;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'tHdTicketApprovalItem')
DROP FULLTEXT INDEX ON tHdTicketApprovalItem;
DROP FULLTEXT CATALOG ftCatalogAlvao;

Tyto příkazy odstraní katalog a všechny indexy Full-Text Search. Po jejich odstranění už nebude možno použít rychlé vyhledávání.

Upozornění:
Pro spuštění tohoto SQL skriptu potřebuje být členem skupiny sysadmin, db_owner, nebo db_ddladmin.

 

Nenašli jste co jste hledali? Zeptejte se našeho týmu technické podpory.