Проблема с запросом OData в Microsoft Flow для действия GetItems в списке SharePoint, содержащем более 20000 строк

Я создал Microsoft Flow (PowerAutomate) для извлечения записей из списка SharePoint. Список содержит 22 300 записей. Я написал приведенный ниже запрос фильтра OData. Столбец (Электронная почта) относится к типу Person.

Электронная почта/адрес электронной почты '[email protected]'

Но ни одна из записей не восстановлена. Однако, если я дам приведенный ниже запрос, будет получена та же запись.

Идентификационный номер 22102

Список содержит следующие записи.

Я БЫ Эл. адрес 22102 мне кто-то 2 другой человек

Однако, если я запрашиваю идентификатор электронной почты второй записи ([email protected]), он извлекается нормально.

Email/EMail eq '[email protected]'

Мне интересно, есть ли какие-либо ограничения на получение записей, превышающих 20000? Действительно удивлен, почему извлекается вторая запись, а не первая? Или мне нужно настроить какие-либо параметры пагинации?

При получении с использованием идентификатора он работает нормально, а для Person - нет. Есть ли какая-либо индексация, которую мне нужно включить, чтобы запрос работал за пределами 20 000?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
308
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если у вас есть более 5000 элементов с этим человеком/электронной почтой «[email protected]», условие фильтра не будет выполнено. Это ограничение SharePoint и SharePoint REST API.

Если у вас есть менее 5000 элементов для этого конкретного адреса электронной почты/человека, вы можете попробовать следующие предложения:

  1. Добавить индексацию для этого человека или столбца группы
  2. Добавьте 5000 в Top Count в действии Get Items
  3. Включите разбиение на страницы в настройках действия «Получить элементы» и укажите количество элементов, которые вы хотите получить.
  4. Вы можете получить максимум 100000 элементов, используя действие «Получить элементы».

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

Ganesh Narayan 02.11.2022 10:59

В этом случае индексация и добавление Top Count должны работать на вас.

Ganesh Sanap 02.11.2022 11:05

Действительно странно, но что сработало, так это добавить TopCount как 30000 и обеспечить нумерацию страниц как 5000, согласно вашему предложению. Я пробовал индексировать, но это не сработало. Но все еще интересно, почему, хотя у меня была только 1 запись результата, здесь играет роль верхний счетчик. Хотя на этот раз время, необходимое для запуска потока, составляет ~ 25 с по сравнению с 1 с ранее. Может быть, просто потребовались первые 250 записей для поиска, когда я запускал без разбиения на страницы и верхнего подсчета. Но большое спасибо за ваше решение. Рад, что сработало..

Ganesh Narayan 02.11.2022 14:03

Другие вопросы по теме