2009-04-15 3 views
1

Можно ли редактировать и вставлять записи в текстовый документ, размещенный в SharePoint?Редактирование документа Word

Мне нужно заполнить таблицу рецензента на основе того, кто сделал последнее изменение документа.

Я знаю, что для этого я использовал бы приемник событий, но как мне взаимодействовать с документом слова в интерактивном режиме?

ответ

2

Вы хотите использовать значения не давал SPListItem в CreatedBy или ModifiedBy и OpenXml API, чтобы сделать это, так что вы не должны использовать объектная модель Word на сервере WSS/MOSS.

Чтобы получить информацию о пользователе, вам нужно что-то вроде этого.

//get the SPWeb reference for web 
SPFile updatedFile= web.GetFile(fileUrl); 
SPUser author = updatedFile.Author; //or updatedFile.ModifiedBy for modifier 

После того как вы автор, чтобы обновить документ Word, вы можете обратиться к этой SharePoint and OpenXml странице вики некоторой помощи. Это основано на Eric White's blog (и других) с Open Xml. Я настоятельно рекомендую вам прочитать его блог и посмотреть на проект PowerTools for OpenXml Codeplex для некоторого кода, который определенно будет полезен.

Также см OpenXmlDeveloper и Open XML Developer portal для получения дополнительной информации

Надеется, что это помогает.

+0

Отлично, спасибо! –

0

Вы можете использовать класс SPDocumentLibrary и метод GetItemsInFolder, чтобы вернуть SPListItemCollection.

Оттуда вы можете бросить элемент объекта Word, и управлять ею через word object model

+0

Это, однако, требует, чтобы Word был установлен на сервере , правильно? – vinny

+0

Упс! вы совершенно правы. Альтернативой может быть использование веб-службы sharepoint для извлечения документа и работы с ним на вашем локальном компьютере (с установленным Word), а затем сохранить его обратно на сервер. – Rob

Смежные вопросы