Как можно перемещать папки и файлы между сайтами и библиотеками документов в SharePoint и поддерживать историю их версий? - PullRequest
5 голосов
/ 02 марта 2009

Я пытаюсь переместить папки между сайтами в рамках одной установки SharePoint 2007. Важнейшим требованием является ведение истории версий.

Один из подходов, которые я попробовал, - это создать новую библиотеку документов на исходном сайте и переместить в нее папки, а затем переместить библиотеку документов на конечный сайт. Я сделал перемещение файла, используя вырезать и вставить в представлении Explorer.

К сожалению, он искажает историю версий файлов - каждая версия в истории файла заканчивается одной и той же датой (и кто знает, откуда взялась дата - ее нет в исходной истории файла), хотя Изменено и другие метаданные в порядке.

Я использовал следующее для перемещения библиотек документов:

  • Мастер развертывания контента SP 1.1 от Криса О'Брайена ( site )
  • STSADM.exe с использованием расширений Гэри Лапойнта ( site ), в частности следующих команд: gl-exportlist, gl-importlist, gl-copylist.

К сожалению, эти инструменты не работают на уровне папок.

Мой следующий шаг - взглянуть на программирование решения, чего я избегал, потому что я новичок в SharePoint и ничего не знаю о его программировании.

Кто-нибудь может мне помочь? В частности, я бы приветствовал:

  • Любые советы о том, как выполнить перемещение без программирования нестандартного решения
  • Любые предложения инструментов, которые могут сделать это, бесплатно или нет (все, что я до сих пор рассматривал, - это AvePoint DocAve, который может управлять контентом только на уровне сайта, поэтому он не может мне помочь)
  • Любые советы, статьи, код и т. Д., Которые могут помочь мне разработать собственное решение.

Большое спасибо.

Ответы [ 6 ]

1 голос
/ 26 марта 2011

http://dandd.codeplex.com/ это решение может сделать это, но оно работает только для sp2010, в любом случае взгляните, оно может дать вам понимание, как использовать веб-сервисы для решения вашей проблемы

1 голос
/ 19 апреля 2009

Что вам нужно сделать, не поддерживается SharePoint, как и многие другие межсайтовые и межхозяйственные операции. Будем надеяться, что это улучшится в будущих выпусках.

Вы должны проверить продукты из AvePoint . Они обладают многими из этих возможностей и не только, но считаются дорогими. Они предоставляют API, если у вас нет сомнений относительно сторонних зависимостей. Вы упомянули, что DocAve только для одного сайта, но это не так. Возможно, вы захотите связаться с компанией, чтобы узнать больше.

Программный подход требует, чтобы вы строили все свои собственные леса с использованием API объектной модели или API веб-службы. API веб-службы проще в использовании и позволяет вашему коду быть более независимым от местоположения, но ему не хватает слишком многих функций, если вам нужен хороший уровень контроля. Помимо файлов и папок вам нужно беспокоиться о пользователях, типах контента и любых других элементах списка, которые нужны вашему приложению.

Подход объектной модели требует, чтобы код запускался на машине, которая является членом фермы. Это означает, что вам потребуется локальный «агент» в развертывании с несколькими фермами и для создания соответствующей логики распределения.

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

0 голосов
/ 17 апреля 2009

В этом сценарии у меня был успех с Tzunami Deployer. В моем блоге я опубликовал свой опыт со скриншотами . Я нашел их поддержку очень хорошо, даже во время пробного периода. Это бесплатно.

0 голосов
/ 09 апреля 2009

У вас есть страницы публикации или просто предметы. У некоторых более опытных людей в моей команде были проблемы с перемещением страниц публикации и дат в истории версий. Я думаю, что мы потратили 5 дней, пытаясь использовать задания таймера с использованием повышенных привилегий, веб-сервисов и т.д ....

Иногда вам просто хотелось, чтобы Sharepoint был простым приложением SQL Server, где вам просто нужно изменить поле ....

0 голосов
/ 08 апреля 2009

К сожалению, мне пришлось кодировать это решение при создании инструмента архивации для MOSS.

0 голосов
/ 02 марта 2009

Хороший сценарий PowerShell, использующий метод CopyTo () для объекта spListItem, должен быть хорошим началом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...