SharePoint — это надежная платформа для совместной работы, предлагающая широкий спектр функций для управления и организации данных. Одной из ключевых функций SharePoint является возможность работы со списками. С помощью объекта sp.web.list разработчики могут выполнять различные операции со списками SharePoint, включая фильтрацию данных на основе определенных критериев. В этой статье мы рассмотрим несколько методов фильтрации списков SharePoint с помощью объекта sp.web.list и приведем примеры кода.
- Метод 1: Фильтрация с использованием запроса CAML
Язык разметки приложений для совместной работы (CAML) — это язык на основе XML, используемый для запроса данных SharePoint. Объект sp.web.list предоставляет методgetItemsByCAMLQuery, позволяющий фильтровать данные с помощью запросов CAML. Вот пример:
const camlQuery = `<View>
<Query>
<Where>
<Eq>
<FieldRef Name='Status' />
<Value Type='Text'>Completed</Value>
</Eq>
</Where>
</Query>
</View>`;
const items = await sp.web.lists.getByTitle('YourListTitle').getItemsByCAMLQuery(camlQuery);
- Метод 2. Фильтрация с помощью запроса OData
API REST SharePoint поддерживает протокол OData, который обеспечивает более гибкие параметры фильтрации. Объект sp.web.list предоставляет методыselect,filterиgetдля выполнения фильтрации OData. Вот пример:
const items = await sp.web.lists.getByTitle('YourListTitle').items
.select('Title', 'DueDate')
.filter("Status eq 'Completed'")
.get();
- Метод 3. Фильтрация с использованием библиотеки PnPjs
PnPjs — это популярная библиотека JavaScript для разработки SharePoint, предоставляющая упрощенный API для работы с данными SharePoint. Библиотека расширяет объект sp.web.list, предлагая дополнительные возможности фильтрации. Вот пример:
import { sp } from '@pnp/sp/presets/all';
const items = await sp.web.lists.getByTitle('YourListTitle').items
.filter('Status eq \'Completed\'')
.get();
Фильтрация списков SharePoint — важнейший аспект работы с данными в SharePoint. В этой статье мы рассмотрели три мощных метода фильтрации списков SharePoint с помощью объекта sp.web.list. Мы рассмотрели фильтрацию с помощью запросов CAML, запросов OData и библиотеки PnPjs. Используя эти методы, разработчики могут эффективно извлекать определенные данные из списков SharePoint на основе пользовательских критериев, повышая производительность и организацию данных.