Per chi sviluppa siti con Sharepoint può tornare molto utile creare il portale su un proprio ambiente virtuale per poi procedere allo spostamento sul server di produzione solo nel momento della messa in produzione.
Questo ci permette per esempio di poter lavorare comodamente dal proprio ufficio ed in locale sulla propria macchina.
Comunque, nel momento in cui bisogna spostare il nostro sito sul server del cliente, iniziano i problemi.
Ci sono parecchi articoli e post sull'argomento di deploy e migration di Sharepoint, tra cui questo che descrive brevemente tutte le possibilità che lo sviluppatore ha a disposizione per effettuare queste operazioni.
Nel caso che si voglia spostare un sito(e non un site collection), è possibile affidarsi alla funzionalità di import/export disponibile tramite il comando stsadm.
Il comando stsadm si trova in C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\BIN :
stsadm -o export -url <url sito da esportare> -filename <file dei dati esportati>
stsadm -o import -url <url sito in cui importare> -filename <file dei dati esportati>
Quando si importa è necessario essere sicuri che il sito di destinazione sia già stato creato e che si abbia utilizzato lo stesso site template del sito esportato.
Inoltre, attenzione che sul sito di destinazione è necessario siano attivate tutte le feature che sono attivate sul sito che si sta esportando nel momento dell'esportazione.
Nel caso che il nostro sito sia pesantemente customizza
to, intendo quindi workflow e site pages personalizzate, è necessario anche provvedere alla sostituzione di tutti i GUID delle liste presenti nelle pagine personalizzate con i nuovi GUID assegnati alle liste durante l'importazione.
La sostituzione va fatta sulle pagine(aspx), sullo xoml degli eventuali workflow e sui datasources usati per le dataview.
Per velocizzare questo processo io mi sono creato i file .fpq contenenti le query per la replace e poi applico la replaceall su tutto il sito importato, per ogni file .fpq creato.
Ogni file .fpq contiene la query di replace per ogni lista.
Ovviamente il tutto dallo Sharepoint Designer.
Dimenticavo, per scoprire i GUID delle liste io ho usate un tool che si chiama Sharepoint Inspector, ma penso ce ne siano altri, anche migliori, in giro.
Spero sia di aiuto...