Подтвердить что ты не робот

Представление отношений родитель-потомок в списках SharePoint

Мне нужно создать некоторые функции в нашем приложении SharePoint, которое заполняет список или списки с помощью простых иерархических данных. Каждая родительская запись будет представлять "представление", и каждая дочерняя запись будет "элементом представления". Там есть связь 1-к-n между представлениями и представлениями. Это практично делать в SharePoint? Единственные типы отношений списков, которые я сделал до сих пор, - это столбцы поиска, но это кажется немного другим. Кроме того, как только такое отношение списка установлено, тогда какой лучший способ создать представления для такого рода данных. Я почти уверен, что было бы проще просто написать этот материал во внешнюю базу данных, но я хотел бы дать SharePoint, чтобы воспользоваться возможностями автоматического поиска.

4b9b3361

Ответ 1

Правильный родитель/ребенок в Sharepoint практически невозможен без его развития. Здесь есть один подход: Имитировать отношения родителя/ребенка в SharePoint 2007 с папками и типами содержимого

(Примечание: это касается SharePoint 2007. В 2010 году Объединяющие делают это намного проще)

Ответ 2

Сделайте это в отдельной базе данных, создайте страницы с элементами управления, которые обрабатывают данные и запускают поиск по ним. Тем не менее, проигрывает довольно много функций SharePoint.

В противном случае может быть удобно создать настраиваемый элемент управления поля, который позволит вам искать данные в другом списке. Пользовательский элемент управления полем может быть "просматривать" связанные данные. Я знаю, что мы сделали это для родительских отношений между страницами в одном списке. Не 1-к-N, хотя.

Жесткий выбор в любом случае.

Ответ 3

Мое голосование - "написать этот материал во внешнюю базу данных"

Вы пропустили много вещей в продуктах Sharepoint, таких как поддержка транзакций, ссылочная целостность, простой способ обновления (сравнить SQL), отчетность (с использованием служб Reporting Services и базы данных SQL)... см. sharepoint как способ хранения документов и простые списки.....

Аргумент для Sharepoint - это небольшое приложение, никаких требований к поддержке транзакций, нет необходимости импортировать внешние данные и т.д.

Когда люди говорят, что Sharepoint представляет собой платформу разработки, необходимо определить, что они считают, что платформа разработки.

Последние слухи о Sharepoint 2010 говорят нам о том, что в следующей версии будет поддержка списков на основе SQL-сервера..... что, я думаю, по крайней мере переместит Sharepoint в правильном направлении....

Ответ 4

Взгляните на SLAM, SharePoint List Association Manager, проект с открытым исходным кодом, который моя компания создала и активно поддерживает. SLAM позволяет синхронизировать данные SharePoint с SQL, включая любые отношения между списками. SLAM, помимо того, что он очень полезен сам по себе, на самом деле является основой, которая позволяет разработчикам создавать свои собственные сложные ассоциации данных, используя то, что мы называем профилями типа SLAM. У нас есть один готовый профиль типа, который является частью проекта с открытым исходным кодом, который фактически позволяет вам создать иерархию списка SharePoint с использованием модели вложенного набора. Для получения дополнительной информации см. эту страницу на нашем сайте codeplex.

Ответ 5

Я делаю это просто с использованием sharepoint, используя фреймворк под названием AAA (Activity, Assignment, Artifact), который позволяет использовать столбцы поиска для привязки присвоения или артефакта к родительской активности. Затем вы создаете страницу веб-частей со связанными веб-частями, которые позволяют фильтровать все задания и артефакты по активности. Например, нажмите рядом с представлением в веб-части представления, и все элементы отправки, прикрепленные к этой заявке, будут отображаться. Отлично работает.

Ответ 6

Другой подход, который вы можете использовать при использовании, - это сохранение XML с полем в элементе. Это подход, используемый комплектом Podcasting Kit (для CodePlex) для хранения таких вещей, как рейтинги.

Ответ 7

Одним из возможных способов является создание типа содержимого отправки на основе типа содержимого папки и элемента представления на основе типа содержимого элемента. Затем вы можете хранить данные иерархически, как в файловой системе, а также работать с представлениями по умолчанию и функциями поиска.

Другой способ - создать поле поиска, которое указывает на тот же список (list = "self" ). Это поле будет использоваться как ссылка на родительский элемент, и вы получите список, содержащий рекурсивно связанные данные. Использовать эти данные программно будет нормально, но использование функций просмотра будет немного сложным.

Ответ 8

Это легко сделать, используя связанную веб-часть.

Создайте два списка:

Родитель (Id, Title) Ребенок (Id, Title, ParentId)

Создайте новую страницу sharepoint, добавьте DataFormWebPart (показывая Parent) и еще один для Child, установите оба из них для фильтрации на основе параметра QueryString (используйте этот параметр для фильтрации Parent.Id и Child.ParentId), вы может отображать отношения родитель-потомок. Теперь добавить детей сложнее, и часть, которую я еще не разработал,