Количество строк в getItems - PullRequest
       1

Количество строк в getItems

1 голос
/ 22 сентября 2019

Я пытался получить все элементы из списка, используя библиотеку phpSPO: https://github.com/vgrem/phpSPO

Однако в свойствах $ remoteList в массиве данных есть только 100 строк, а в списке большечем 100 предметов.Я видел, что это распространенная проблема, однако я не знаю, какое решение я должен рассмотреть для этой библиотеки.https://sharepoint.stackexchange.com/questions/74777/list-api-get-all-items-limited-to-100-rows

$remoteList = $web->getLists()->getByTitle(xxx)
$listData = $remoteList->getItems();

1 Ответ

0 голосов
/ 23 сентября 2019

Существует открытое свойство для класса CamlQuery с именем ListItemCollectionPosition, определенное в этом файле:

https://github.com/vgrem/phpSPO/blob/b05be0eba6902dabd18784576bb6e1d55426fa99/src/SharePoint/CamlQuery.php

, которое ожидает объект ListItemCollectionPosition в качестве значения: https://github.com/vgrem/phpSPO/blob/b05be0eba6902dabd18784576bb6e1d55426fa99/src/SharePoint/ListItemCollectionPosition.php

Так что я думаю, что ваш код должен выглядеть примерно так:

$remoteList = $web->getLists()->getByTitle(xxx);

$listItemCollectionPosition = new new ListItemCollectionPosition(); // Either add a use statement for this or use the fully qualified class name here
// ... (set the values according to the items/page you require)
$remoteList->ListItemCollectionPosition = $listItemCollectionPosition;

$listData = $remoteList->getItems();

С точки зрения того, как именно его использовать, прочитайте информацию здесь:

https://docs.microsoft.com/en-us/previous-versions/office/developer/sharepoint-2010/ee534956(v%3Doffice.14)#retrieving-items-using-list-item-collection-position

Пример написан на C #, но ему не сложно следовать.

Выглядит так, как будто вы задали ListItemCollectionPosition в своем запросе, чтобы получить последующие "страницы".Кроме того, похоже, что ответы сами содержат свойство ListItemCollectionPosition, которое затем можно использовать в качестве отправной точки для следующего запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...