Priority-Web-SDK: фильтрация формы
Я пытаюсь понять, как использовать функцию setSearchFilter в Priority Web SDK. Я могу запустить formStart(), а затем form.getRows(1), чтобы получить всю форму, но мне нужно только ~5 из более чем 100 строк.
login(configuration)
.then(() => formStart('ORDERS', null, null, 'demo',1))
.then(form => form.setSearchFilter({
or: 0,
ignorecase: 1,
QueryValues: [{
field: 'TOTPRICE',
fromval: '100',
op: '>'
}]
}))
.then(filter => filter.getRows(1))
.then(rows => console.log(rows))
.catch(err => console.log(err));
Если я закомментирую then-setSearchFilter
линия, я получаю всю форму. С этим я получаю filter
не определено.
Это для телефонного приложения, поэтому важно, сколько данных я загружаю.
1 ответ
Решение
Как видно из документации, setSearchFilter не возвращает объект фильтра. После определения фильтра каждый вызов getRows будет возвращать строки в соответствии с фильтром. Вы должны назвать это так: form.getRows
не filter.getRows
,
Кроме того, при определении фильтра вы должны определить все его элементы.