Дополнительные возможности API
Получение отсортированных данных
http://localhost:2001/apix1/Product?$order=Title
после $order= указывается поле, по которому нужно отсортировать
Сортировка в обратном порядке по полю из вложенных объектов:
http://server:2001/Invoice?$orderby=Customer/Country/Name desc
Получение одной записи из списка
http://localhost:2001/apix1/Product(13)
где 13 - ид сущности, возвращаемая через API
Получение количества объектов, возвращаемых функцией
Вариант получения количества для всех объектов (без фильтрации и доп. параметров):
Если нужно получить количество, возвращаемое по какому-то запросу с фильтрами, то это количество можно возвратить в результатах этого запроса. Для этого в запрос нужно добавить параметр $inlinecount=allpages
Фильтрация данных
Для фильтра используется параметр $filter= после которого указывается название поля, затем оператор сравнения и значение для сравнения
например так возвращаются записи функцией Customer у которых имя равно Иван
В фильтрах можно использовать несколько условий, в том числе по полям из вложенных объектов
Поддерживаются операторы сравнения:
lt - меньше
gt - больше
le - меньше или равно
ge - больше или равно
eq - равно
Дата и время в фильтр передается в формате YYYY-MM-DDThh:mm:ss, например 2019-05-23T14:30:00
Поиск по подстроке
contains(Extsrch, 'МАШИНКА')
Для поиска товаров из прайсов поставщиков или товаров собственного каталога можно использовать поле Extsrch
В этом поле хранится текст в верхнем регистре, очищенный от пробелов и других символов. Текст содержит Бренд товара, Модель и Название товара.
Ограничение по количеству записей
$skip - сколько записей пропустить
$top - сколько записей получить
в приведенном примере возвращается 20 записей, начиная с 10-ой, при этом возвращаются данные отсортированные по ID начиная с последнего (orderby=Id desc). Если во время выгрузки добавятся в базу новые товары или другие объекты, то последовательность собьется, т.е. сместится на количество этих добавленных объектов. Это нужно использовать для больших таблиц, таких как Product и Supplier
Обязательно нужно использовать сортировку по ID, так как во время выгрузки данных сортировка данных в базе может измениться.