Каков наилучший способ переноса документов в Sharepoint (MOSS) 2007? - PullRequest
0 голосов
/ 29 апреля 2010

Я работаю с клиентом, которому необходимо перенести документы из их текущей системы управления документами (не Sharepoint) в Sharepoint MOSS 2007, сохраняя историю и метаданные документа. Я написал подтверждение концепции с использованием веб-сервисов Sharepoint, и это выглядит многообещающе, но загвоздка, похоже, программно устанавливает дату, время и пользователя. Веб-сервисы позволяют задавать поля, но неявно переопределяют их, чтобы быть зарегистрированным в данный момент пользователем + дата / время. По понятным причинам мне нужно иметь возможность сохранить исходную дату и время и пользователя при миграции. Кто-нибудь знает лучший способ решения этой проблемы?

1 Ответ

0 голосов
/ 29 апреля 2010

Вы пытались программно добавить документ, а затем обновить эти поля? Возможно, вы могли бы сделать это непосредственно на объекте в базе данных SP2K7, если у вас есть идентификатор объекта.

Вот статья, которая может вам немного помочь.

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)
...