Restore di site collection che eliminano i search display group
Su un progetto WCM che sto seguendo abbiamo avuto le necessità di migrare dei dati da un CMS a SharePoint. Per le attività di migrazione è stato opportuno scrivere un tool che si occupa di leggere i contenuti editoriali dal CMS (direttamente dal db che li contiene) e scriverli su SharePoint tramite object model.
Naturalmente la site definition utilizzata è quella di Publishing opportunamente personalizzata. Dato che le attività di personalizzazione dei siti richiedono l'attivazione di una serie di features (che si occupano di modificare il layout, creare la site tree, personalizzazione la navigazione, search scopes e via dicendo) e che le migrazioni dei dati non sempre esportano correttamente al 'primo colpo' tutti i contenuti editoriali, è stato opportuno adottare una metodologia per semplificare le attività e ridurre le tempistiche operative.
La metodologia utilizzata è la seguente:
- Creazione della site collection.
- Configurazione tramite l'attivazione di features.
- Configurazione manuale per dettagli tipici di quel sito.
- Verifica della bontà di quanto realizzato. Questa è un'attività manuale per il momento che potrebbe comunque essere automatizzata in futuro.
- Backup della site collection tramite stsadm (–o backup)
- Migrazione contenuti e verifica delle migrazione. Se la migrazione non ha prodotto quanto aspettato interveniamo sul processo di migrazione per correggerne dei flussi/contenuti.
- Restore della site collection tramite stsadm (–o restore)
- Migrazione contenuti.
Anomalia riscontrata:
Talvolta, a seguito del processo di restore della site collection, si riscontrano dei problemi sulla configurazione degli scope del search. In particolare, il problema manifestato è che a seguito dei restore ‘spariscono’ i display group Search Dropdown (relativo alla ricerca standard) e Advanced Search (relativo alla ricerca avanzata).

Per risolvere il problema occorre ricreare manualmente i Display Group e associargli gli scope, seguendo questi passi:
- Dal sito root delle site collection selezionare Site Actions -> Site Settings -> Modify All Site Settings.
- Selezionare Search Scopes dalla sezione Site Collection Administration.
- Cliccare su New Display Group.
- Inserire nel Title la stringa Search Dropdown. Se il sito è stato creato in una lingua diversa dall’inglese occorre specificare la localizzazione della stringa.
- Nella sezione Scopes selezionare People e All Sites.
- Salvare
- Cliccare su New Display Group.
- Inserire nel Title la stringa Advanced Search. Se il sito è stato creato in una lingua diversa dall’inglese occorre specificare la localizzazione della stringa.
- Nella sezione Scopes selezionare All Sites.
- Salvare