1. ghostrid3r 26.03.20 11:02 Сейчас в теме

Обмен с Редмайн

Добрый день, подскажите пож-та, может кто сталкивался, при получении списка заявок из редмайн через HTTPСоединение, назад в 1С возвращзается массив, только с 25 элементами, ровно столько отображается на одной странице, можно убрать это ограничение?
Найденные решения
3. cprit 225 26.03.20 12:04 Сейчас в теме
Добрый день!
При передаче запросов к API в редмайне есть параметры

offset: смещение первого выбираемого объекта
limit: сколько записей за раз он вернет. от 25 до 100. Больше 100 поставить нельзя

И дальше в ответе вам возвращаются в шапке JSON параметры
GET /issues.json

{ "issues":[...], "total_count":2595, "limit":25, "offset":0 }

total_count- сколько всего записей

Расчетным путем вычисляем сколько страниц и запускаем цикл

НомерПервого=0;
РазмерВыборки=100;
ВсегоЗаписей=2595;//эту штуку надо получить либо из первой страницы или предварительно

КоличествоСтраниц=Цел(ВсегоЗаписей/РазмерВыборки);
Если КоличествоСтраниц<>(ВсегоЗаписей/РазмерВыборки) Тогда
КоличествоСтраниц=КоличествоСтраниц+1;
КонецЕсли;

//Цикл по страницам
Для НомерСтраницы =1 По КоличествоСтраниц Цикл
Запрос= "/issues.JSON?offset="+Формат(НомерПервого,"ЧГ=0")+"&limit="+РазмерВыборки;

....Обработка результата

НомерПервого=НомерПервого+РазмерВыборки;
КонецЦикла;

Показать
Остальные ответы
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
2. ghostrid3r 26.03.20 11:03 Сейчас в теме
либо обойти эти страницы поочередно, может есть какой способ?
3. cprit 225 26.03.20 12:04 Сейчас в теме
Добрый день!
При передаче запросов к API в редмайне есть параметры

offset: смещение первого выбираемого объекта
limit: сколько записей за раз он вернет. от 25 до 100. Больше 100 поставить нельзя

И дальше в ответе вам возвращаются в шапке JSON параметры
GET /issues.json

{ "issues":[...], "total_count":2595, "limit":25, "offset":0 }

total_count- сколько всего записей

Расчетным путем вычисляем сколько страниц и запускаем цикл

НомерПервого=0;
РазмерВыборки=100;
ВсегоЗаписей=2595;//эту штуку надо получить либо из первой страницы или предварительно

КоличествоСтраниц=Цел(ВсегоЗаписей/РазмерВыборки);
Если КоличествоСтраниц<>(ВсегоЗаписей/РазмерВыборки) Тогда
КоличествоСтраниц=КоличествоСтраниц+1;
КонецЕсли;

//Цикл по страницам
Для НомерСтраницы =1 По КоличествоСтраниц Цикл
Запрос= "/issues.JSON?offset="+Формат(НомерПервого,"ЧГ=0")+"&limit="+РазмерВыборки;

....Обработка результата

НомерПервого=НомерПервого+РазмерВыборки;
КонецЦикла;

Показать
4. ghostrid3r 26.03.20 12:37 Сейчас в теме
(3)
спс будем пробовать, а возможно ли список заявок подкинуть для выборки информации или только перебором каждой?
6. cprit 225 26.03.20 13:50 Сейчас в теме
(4) Инфу из них можно вытаскивать с помощью параметра запроса include

include: fetch associated data (optional, use comma to fetch multiple associations). Some possible values (for full list see below):
attachments - Since 3.4.0
relations
journals
children

Фильтр по id можно множественный сделать

Например.
GET /issues.xml?issue_id=1,2
5. ghostrid3r 26.03.20 13:19 Сейчас в теме
и еще вопрос, есть такое поле как status_id одни заявки с одним номером, другие с другим, если не добавлять конструкцию &status_id= тогда вытягиваются данные, только с определенным статусом, можно ли выбор сразу по нескольким статус осуществлять?
7. cprit 225 26.03.20 13:52 Сейчас в теме
(5) Если фильтр по статусу не указан, то он отдает только открытые заявки

Если нужны все подряд заявки, нужно указывать фильтр по статусу = *
GET /issues.xml?status_id=*
8. ghostrid3r 26.03.20 15:25 Сейчас в теме
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Программист 1С
Новосибирск
зарплата от 30 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 100 000 руб. до 150 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Специалист внедрения и сопровождения 1С
Москва
зарплата от 80 000 руб.
Полный день