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

1. ghostrid3r 26.03.20 11:02 Сейчас в теме
Добрый день, подскажите пож-та, может кто сталкивался, при получении списка заявок из редмайн через HTTPСоединение, назад в 1С возвращзается массив, только с 25 элементами, ровно столько отображается на одной странице, можно убрать это ограничение?
Найденные решения
3. cprit 874 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 874 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 874 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 874 26.03.20 13:52 Сейчас в теме
(5) Если фильтр по статусу не указан, то он отдает только открытые заявки

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

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

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

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

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)