Per attivare le ricerche booleane su WSS (Windows SharePoint Services 2003), che va ricordato sfrutta le funzionalità full-text search di SQL Server 2000, occorre procedere ad alcune modifiche delle stored-procedure contenute nel DB di WSS.
Naturalmente queste istruzioni non sono applicabili a scenari di WSS con DB su MSDE (oWMSDE), dove le funzionalità di full-text serach non sono disponibili.
- Attraverso Enterprise Manager, apri il DB e accedi al container delle stored-procedure
- Per abilitare la ricerca booleana sulle Raccolte documenti, apri la SP “proc_FetchDocSearchResults“
- per sicurezza fatti una copia di backup della SP (anche con un semplice copia incolla delle istruzioni su un file .txt)
- Fai clic con il pulsante di destra del mouse sulla SP e scegli Properties
- Ricerca la stringa “SET NOCOUNT ON“, e inserisci prima di questa riga la seguente istruzione:
- DECLARE @CustSearchTerm nvarchar(255)
SET @CustSearchTerm = ‘”‘ + @SearchTerm + ‘”‘ - Cerca la stringa “FreeTextTable“e sostituiscila con “ContainsTable“
- Sulla stessa riga, sostituisci la variabile “@SearchTerm” con “@CustSearchTerm“
- Conferma il tutto (Apply e OK).
- Per abilitare la ricerca booleana sulle Liste (Elenchi), apri la SP “proc_FetchListItemSearchResults“
- Fatti la solita copia di backup (non si sa mai 🙂
- Fai clic con il pulsante di destra del mouse sulla SP e scegli Properties
- Ricerca la stringa “@SearchTerm” con “@CustSearchTerm” (sono presenti tre occorrenze)
- Conferma il tutto (Apply e OK).
- Se il contenuto dei tuoi siti WSS è distribuito su più database, ripeti la stessa procedura su ciascun DB
- Chiudi Enterprise Manager
- Esegui IISRESET per riavviare i servizi web.
Da questo momento in poi le funzionalità di ricerca dei siti WSS saranno in grado di supportare gli operatori booleani AND/OR (non altri).