2010-04-29 5 views
0

Je travaille avec un client qui doit migrer des documents de son système de gestion de documents actuel (pas Sharepoint) vers Sharepoint MOSS 2007 en conservant l'historique et les métadonnées des documents. J'ai écrit une preuve de concept en utilisant les services web Sharepoint et cela semble prometteur, mais le problème semble être de fixer par programme la date/heure et l'utilisateur. Les services Web permettent de définir les champs, mais les remplacent implicitement pour être l'utilisateur actuellement connecté, la date et l'heure. Pour des raisons évidentes, je dois être en mesure de conserver la date et l'heure d'origine et la migration de l'utilisateur. Est-ce que quelqu'un sait la meilleure façon d'aborder ce problème?Quelle est la meilleure façon de migrer des documents dans Sharepoint (MOSS) 2007?

Répondre

0

Avez-vous essayé d'ajouter le document par programme et de mettre à jour ces champs? Peut-être pourriez-vous même le faire directement sur l'objet dans la base de données SP2K7 si vous avez l'identifiant de l'objet.

Voici un article qui pourrait peut-être vous aider un peu.

http://www.eggheadcafe.com/software/aspnet/29904945/change-modificationcreat.aspx

Dim vLocalFileName As String 
Dim file As SPFile 
pLocation = "http://myserver/Docs/Documents/TestDoc.doc" 
vLocalFileName = "C:\TestDoc.doc" 
Dim site As SPWeb = New SPSite("http://myserver/Docs").OpenWeb() 

Dim fStream As FileStream 
fStream = New FileStream(vLocalFileName, FileMode.Open) 
Dim contents(fStream.Length) As Byte 
fStream.Read(contents, 0, CInt(fStream.Length)) 
fStream.Close() 

file = site.Files.Add(pLocation, contents) 
Dim ListItem As SPListItem 
ListItem = file.Item 
ListItem("Title") = "updatetest" 
ListItem("MyLookupField") = "1" 
ListItem("Created") = "2007/01/01 10:00" 
ListItem("Modified") = "2007/01/01 11:00" 
ListItem.Update() 

file.CheckIn("", SPCheckinType.MajorCheckIn) 
+0

Il semble donc que vous pouvez télécharger le document, manipuler les champs, puis vérifier dans une nouvelle version. Je suppose que vous voudriez que ce soit sur la version unique, mais je ne pense pas que ce soit une mauvaise approche. Il serait peut-être bon de savoir comment ce document est arrivé à l'origine via votre processus de migration. – hunter

+0

Merci Hunter. Je vais vérifier + mise à jour avec mes résultats. –

Questions connexes