InfoPath Получение информации о группе SharePoint - PullRequest
1 голос
/ 09 апреля 2010

У меня есть форма InfoPath, встроенная в страницу aspx на сайте SharePoint. Как связать группы пользователей SharePoint с раскрывающимся списком в моей форме? До сих пор я пытался создать соединение данных с веб-службой (метод GetGroupCollectionFromWeb) для извлечения данных. Затем я открываю свойства списка, выбираю «Поиск значений из внешнего источника данных», выбираю источник данных, назначаю записи и получаю следующую ошибку:

«Вы должны выбрать повторяющуюся группу или поле.»

Что я не понимаю, так это то, что метод, который я вызываю, называется GetGroupCollectionFromWeb, не является ли возвращаемое значение коллекцией? И разве коллекции не повторяются по определению? Чего мне не хватает, и есть ли обходной путь? Спасибо.

1 Ответ

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

В вашей конкретной проблеме я не слишком уверен, потому что я никогда не использую подключения к данным внутри Infopath.

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

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

...