Проблемы и риски с уникальными идентификаторами Project Server 2010

Как лучше всего создавать уникальные идентификаторы для проблем и рисков в Project Server 2010? Мне нужно, чтобы они были доступны в базе данных отчетов SharePoint и Project Server? Они должны быть доступны в базе данных, потому что мне нужно создать отчет в SSRS, и я не думаю, что запрос SPList - хорошая идея.

Любые идеи?




Ответы (1)


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

База данных отчетов Project Server имеет несколько нестандартных полей, которые обновляются при публикации проекта и включают уникальный идентификатор проблемы. Проверьте MSP_WSSIssue и MSP_WSSRisk в базе данных отчетов.

Нам нужно было использовать настраиваемые поля, которые были добавлены в список, поэтому в итоге мы использовали Расширения источника данных Enesys SSRS, которые упрощают создание отчетов по сайтам SharePoint.

person Jamie F    schedule 03.09.2013
comment
Это очень плохо. Уникальные идентификаторы из MSP_WSSIssue и MSP_WSSRisk являются руководствами, и в моем случае они бесполезны. - person Greg; 03.09.2013
comment
Я подумал о добавлении нового столбца UID (автоинкремент) в MSP_WSSIssue и MSP_WSSRisk и попытался отобразить его в SharePoint, но я не знаю, имеет ли это вообще смысл. - person Greg; 03.09.2013
comment
Я был бы удивлен, если бы это сработало. Я думаю, что строки удаляются и воссоздаются при публикации проекта. Вы могли бы иметь некоторый код, отображающий Guids в вашу собственную таблицу, и иметь там столбец идентификаторов для использования. Тогда, если строка будет удалена из таблиц MSP_WSS *, у вас не будет проблем. - person Jamie F; 03.09.2013
comment
Хм, я добавил столбец автоинкремента в таблицы MSP_WSS *, а также добавил приемник событий, который считывает (используя BDC) уникальный идентификатор из БД и сохраняет его в списке рисков / проблем SharePoint. И я думаю, что это хорошо выглядит. Вопрос в том, что может пойти не так, где мне ожидать проблем? (Я не эксперт по Project Server) - person Greg; 04.09.2013
comment
Отредактируйте проблему, а затем повторно опубликуйте файл проекта, связанный с этим сайтом. Посмотрите, имеет ли ваш автоматически увеличиваемый столбец то же самое значение для проблемы ((я предполагаю, что это не так.) Кроме того, здесь мы переходим на неподдерживаемую территорию: пакеты обновления и накопительные обновления могут удалить ваш столбец, а MS не может поддержите вопросы, связанные с этим. - person Jamie F; 04.09.2013
comment
Что вы имеете в виду под проблемой редактирования? Я открыл проект в Project профессиональный 2010, и когда я нажимаю «Проблемы или риски», в моем веб-браузере открывается список SharePoint. - person Greg; 04.09.2013
comment
В некоторых списках SharePoint используется управление версиями, поэтому при редактировании элемента, как и в случае с одной из этих проблем, могут генерироваться новые идентификаторы. Процесс публикации вынуждает Project Server обновить базу данных отчетов. (До этого момента он не обновлялся.) - person Jamie F; 04.09.2013
comment
После редактирования и публикации идентификатор останется прежним. Так что единственные проблемы - это пакеты обновлений и обновления. Ответ на мой вопрос: нет хорошего способа предоставить уникальные идентификаторы для рисков и проблем. Спасибо за помощь мне. - person Greg; 05.09.2013