SharePoint Server 2010 Поиск пользователей по профилям
От: alexeybbb https://www.mcpvirtualbusinesscard.com/VBCServer/boyko/profile
Дата: 23.03.11 06:57
Оценка:
Доброго времени суток,

Дано
SharePoint Server 2010 наполненный профилями пользователей. В профилях есть дополнительные не стандартные поля.

Задача
Сделать форму поиска пользователей по профилям. При этом поиск может осуществляться как
— по некоторым стандартным полям
— так и по дополнительным не стандартным полям

Вывода результатов поиска в своем (не стандартном) дизайне.

Например:
— найти всех пользователей фамилия которых начинается на "Ивано" и в поле "department" указано "бухгалтерия".
— найти всех пользователей у которых день рождение в мае.


Подскажите пожалуйста куда смотреть, что читать для реализации такой задачи.


Сейчас вижу такие варианты:
1. В SharePoint Server 2010 есть служба "Поиск Sharepoint Server", с помощью которой можно осуществлять поиск пользователей.
Насколько я понял есть возможность искать пользователей по заданным атрибутам.
Например: department:"бухгалтерия"

1.1. Где описан язык поисковых запросов (если он существует)

И, вроде бы, можно настроить поиск и по дополнительным не стандартным полям в профилях пользователей (SharePoint User Profile Custom Properties Keyword Search Problem, people search: use a custom ranking model to search in added profile properties).

1.2. Можно ли взаимодействовать с сервисом поиска напрямую не через стандартную веб-часть поиска?

2. Попробовать использовать объектную модель или сервисы Sharepoint.
2.1. Какие объекты или сервисы можно использовать?

UserProfileManager есть метод Search, но с его помощью видимо нельзя построить реальный поисковой запрос. Если можно, подскажите как.
ProfileSearchManager.Search — не понятно как использовать, нет примеров.
User Profile Service Web Service — не нашел методов с помощью которых можно осуществлять поиск.

3. Делать прямые SQL запросы в базу данных портала.


Спасибо.
sharepoint
Re: SharePoint Server 2010 Поиск пользователей по профилям
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 24.03.11 05:33
Оценка:
Здравствуйте, alexeybbb, Вы писали:

A>Доброго времени суток,


A>Дано

A>SharePoint Server 2010 наполненный профилями пользователей. В профилях есть дополнительные не стандартные поля.

A>Задача

A>Сделать форму поиска пользователей по профилям. При этом поиск может осуществляться как
A>- по некоторым стандартным полям
A>- так и по дополнительным не стандартным полям

A>Вывода результатов поиска в своем (не стандартном) дизайне.


Нужно унаследоваться от Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart. Настройки для поиска по профилям можно посмотреть в search center.
Можно и не наследоваться кстати. Результаты выводятся с помощью xslt.

A>Например:

A>- найти всех пользователей фамилия которых начинается на "Ивано" и в поле "department" указано "бухгалтерия".
A>- найти всех пользователей у которых день рождение в мае.
A>Подскажите пожалуйста куда смотреть, что читать для реализации такой задачи.
SharePoint SDK и гугл.


A>Сейчас вижу такие варианты:

A>1. В SharePoint Server 2010 есть служба "Поиск Sharepoint Server", с помощью которой можно осуществлять поиск пользователей.
A>Насколько я понял есть возможность искать пользователей по заданным атрибутам.
A>Например: department:"бухгалтерия"
A>1.1. Где описан язык поисковых запросов (если он существует)
http://msdn.microsoft.com/ru-ru/library/ee556426.aspx

A>1.2. Можно ли взаимодействовать с сервисом поиска напрямую не через стандартную веб-часть поиска?

A>2. Попробовать использовать объектную модель или сервисы Sharepoint.
A>2.1. Какие объекты или сервисы можно использовать?
http://msdn.microsoft.com/ru-ru/library/microsoft.office.server.search.query.aspx

A>3. Делать прямые SQL запросы в базу данных портала.

не стоит.

A>Спасибо.

незачто
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.