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

Даже я столкнулся с теми же проблемами, но понял после нескольких исследований и обнаружил

Была ошибка / или они могли изменить поведение в <version>4.0.0</version> and <version>4.0.1</version> Apache Poi для

sheet1.shiftRows(rowIndex+1, lastIntext, -1);

Пожалуйста, используйте

<dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.17</version>
</dependency>

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>3.17</version>
</dependency>

И используйте свой код гораздо лучше, чтобы удалить вашу строку, как это

public static void removeRow(Sheet sheet, int rowIndex) {
        int lastRowNum = sheet.getLastRowNum();
        if (rowIndex >= 0 && rowIndex < lastRowNum) {
            sheet.shiftRows(rowIndex + 1, lastRowNum, -1);
        }
        if (rowIndex == lastRowNum) {
            Row removingRow = sheet.getRow(rowIndex);
            if (removingRow != null) {
                sheet.removeRow(removingRow);
            }
        }
    }

И это сработало для меня. Может быть, они могут обновить его в следующих выпусках API

Спасибо, если это помогло бы вам

12
задан Chris Farmer 20 November 2008 в 19:58
поделиться

8 ответов

Надлежащий Родитель/Ребенок в Sharepoint почти невозможен, не разрабатывая его самостоятельно. Существует один подход к тому здесь: Моделируйте Родителя / Дочерние отношения в SharePoint 2007 с Папками и Типами контента

(Примечание: Это касается SharePoint 2007. В 2010 Соединения делают это намного легче),

7
ответ дан 2 December 2019 в 21:04
поделиться

Я делаю это много просто использующее sharepoint, с помощью платформы под названием AAA (Действие, Присвоение, Артефакт), который позволяет Вам использовать столбцы поиска для соединения присвоения или артефакта к родительскому Действию. Вы затем создаете сеть, расстаются страница со связанными веб-частями, которые позволяют Вам фильтровать все присвоения и артефакты действием. Например, нажмите рядом с представлением в веб-части представления, и все объекты представления, присоединенные к тому представлению, обнаружатся. Работает отлично.

0
ответ дан 2 December 2019 в 21:04
поделиться

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

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

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

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

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

нет требований по поддержке транзакций, нет необходимости импортировать внешние данные и т. д.

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

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

нет требований по поддержке транзакций, нет необходимости импортировать внешние данные и т. д.

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

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

2
ответ дан 2 December 2019 в 21:04
поделиться

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

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

Сложный выбор так или иначе.

3
ответ дан 2 December 2019 в 21:04
поделиться

Другой подход, что можно посмотреть на использование, сохраняет XML с полем в объекте. Это - подход, используемый Набором Подкастинга (на CodePlex) для хранения вещей как оценки.

0
ответ дан 2 December 2019 в 21:04
поделиться

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

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

0
ответ дан 2 December 2019 в 21:04
поделиться

Это легко сделать с помощью подключенной веб-части.

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

Родитель (Id, Заглавие) Child (Id, Title, ParentId)

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

0
ответ дан 2 December 2019 в 21:04
поделиться

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

2
ответ дан 2 December 2019 в 21:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: