Столбец сайта поиска не сохранения/хранения метаданных для документов Office 2007?

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/2530

  •  16-10-2019
  •  | 
  •  

Вопрос

У меня есть эта проблема в нескольких серверных средах.

У нас есть список в корневой коллекции сайта. В поле «Список этого списка» есть столбец сайта, созданный как многозначный поиск. Этот столбец сайта используется в библиотеках документов в субситах в качестве необходимого поле. Когда мы загружаем что-либо, кроме документа Office 2007, пользователю представлен экран заполнения метаданных документов (editform.aspx? Mode = upload), пользователь заполняет соответствующие данные (включая выбор значения (ы) для этого поиска ), и нажимает «Зарегистрироваться» - документ проверяется, как и ожидалось, со значением поля поиска заполнено.

С документом Office 2007 это терпит неудачу. Выбранные пользователи значения для поля поиска никогда не попадают на сервер - ошибки не бросаются, но поле не сохраняется с помощью документа. У нас есть слушатель событий в этих библиотеках документов, и если мы осмотрим входящий Splistitem в методе слушателя событий, прежде чем будет запущена одна строка нашего кода, мы видим, что значение для поля поиска равна нулю.

Для меня это пахнет ошибкой SharePoint - но прежде чем я пойду на звонок Microsoft, кто -нибудь видел это и работал вокруг этого?

Редактировать: Единственная запись, которую я вижу в журналах трассировки SP, связанных с проблемой:

CMS/Publishing/8ztg/Medium/Got List Item Version, but item was null
Это было полезно?

Решение

Вернулся на то, чтобы открыть билет с Microsoft для этого, и нашел ошибку в документации MSDN для загрузки.

Чтобы получить многосекционной поиск, мы установили атрибут «Mult» в нашем поле Lookup Caml для «True» в XML, который мы передали Spfieldcollection.addfieldasxml. Анкет Однако, несмотря на то, что API не бросает ошибок и, по -видимому, работает в пользовательском интерфейсе, это сталкивается с тем, как работает документы Office 2007 и 2010 и их интеграция SharePoint.

Официальный, поддерживаемый способ добавления многосекционного поля поиска - это использовать тип поля LookupMulti в Полевой Камл. Анкет Делая это, и настройка атрибута «Mult» к «True» дает результат, который я искал.

А Документация MSDN Для «Mult» до сих пор не обновляется документация SP 2007 и может быть безопасно игнорироваться, поскольку это совершенно неправильно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top