1

Выгрузка отчета по заправкам и сливам через API

Тема: Выгрузка отчета по заправкам и сливам через API

Здравствуйте коллеги.
Изучив документацию по API я пришел к выводу, что отчет по заправкам и сливам можно выгрузить только через серию запросов такого вида:
Запрос 1: (Выгрузка отчета без детальных данных)

?svc=report/exec_report&
    params={
        "reportResourceId":8883,           
        "reportTemplateId":2,
        "reportObjectId":8937,
        "reportObjectSecId":0,
        "interval":{
                "from":1515531600,
                "to":1515617999,
                "flags":0x00}
        }&sid=<  >

Запрос 2: (Выдает заправки)

?svc=report/get_result_rows&
    params={
        "tableIndex":0,
        "indexFrom":0,
        "indexTo":22
    }&sid=<  >

Запрос 3: (Выдает сливы)

?svc=report/get_result_rows&
    params={
        "tableIndex":1,
        "indexFrom":0,
        "indexTo":22
    }&sid=<  >

Вопрос: Правильно ли я понимаю, что выгрузить отчет полностью одним запросом нельзя?

2

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

https://sdk.wialon.com/wiki/ru/kit/remo … ples/batch

3

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

Спасибо.

4

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

Добрый день! Просьба помочь с проблемой:
Выполняю запрос:

http://hst-api.wialon.com/wialon/ajax.h … eport&
    params={
        "reportResourceId":77933,
        "reportTemplateId":21,
        "reportObjectId":77937,
        "reportObjectSecId":0,
        "interval":{
            "from":1519231208,
            "to":1519836008,
            "flags":0
        }
    }&sid=0954abe9b01fbe682695e736c457dbf5

где reportResourceId - ИД ресурса, полученного при авторизации,
reportTemplateId - ИД шаблона отчета
reportObjectId - ИД машины в системе

Получаю ошибку 4. Просьба подсказать, что пишу не так.

5

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

ivanushkinamariya1989, приложите строчки кода, в которых формируется и выполняется этот запрос. Формат приложенный здесь верный, но возможно перед отправкой что-то не так делается с параметрами.

Head of Wialon Local Department
Gurtam
6

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

Извините, не нашёл другого места запостить вопрос!

Добрый день!

Интеграция 1С и Wialon.
Проблем с отчетами не было, за исключением последнего "Превышения скорости".

Смущает следующее -- stats возвращается пустой всегда, однако rows меняется в зависимости от переданного ИД машины. Значение Rows  совпадает с количеством строк отчета, если смотреть в онлайн по выбранному транспорту.

Подскажите пожалуйста, что это может быть ?

Делаю стандартно, итоговый запрос отчета:
wialon/ajax.html?&svc=report/exec_report&params={
"reportResourceId": 11936145,
"reportTemplateId": "3",
"reportObjectId": 15229474,
"reportObjectSecId": "0",
"interval": {
  "from": 1451595600,
  "to": 1524776400,
  "flags": "0x00"
}
}&sid=<>

reportObjectId точно корректный, т.к. другой отчет с этими данными работает прекрасно.
reportTemplateId использую порядковый номер отчета (всего их 3 в л.к.)

reportResourceId получаю запросом:
wialon/ajax.html?&svc=core/search_items&params={
"force": "1",
"flags": "0x8001",
"from": "0",
"to": "0",
"spec": {
  "itemsType": "avl_resource",
  "propName": "reporttemplates",
  "propValueMask": "*",
  "sortType": "reporttemplates"
}
}&sid=<>

7

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

Коллеги,

пользователь "tata" дал совет, реализовать передачу флагов не шестнадцатеричным, а десятичным значением.

Попробовал вместо:
- "flags": "0x8001"
значение
- "flags": "8001"
Возвращается невалидный JSON.

В чем еще может быть ошибка? Так же интересует нъюанс, почему в поле Rows значение такое же, как и число строчек в отчете на веб-интерфейсе, а поле stats приходит пустое?

Заранее спасибо за ответы,

8

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

hdworker
Вы не правильно переводите, просто отбросить 0x недостаточно (попробуйте поискать hex to dec в google)

0x8001 == 32769

9

Выгрузка отчета по заправкам и сливам через API

Re: Выгрузка отчета по заправкам и сливам через API

Большое спасибо за ответ!
Попробовал передать как Вы указали -- результат не изменился.
В принципе, на данном этапе проблем не возникало, это не первый отчет получаемый через API.

Исходя из анализа результата, я получаю шапку отчета, наименования полей, общее количество записей в отчете -- без детальных записей.

Данные в поле rows точно соответствуют количеству записей в отчете, как его заказывать через веб-интерфейс.
Проверял по всем машинам, зарегистрированным на учетной записи.

Однако stats, которое обычно содержит детальные записи отчета -- пустое.

Подскажите пожалуйста направление, как можно отладить вызов -- может я как-то неправильно создал шаблон отчета?

Единственное различие в шаблонах -- корректные результаты получаю для отчетов, которые строятся по таблице "статистика".
А этот отчет строится по таблице "Превышения скорости".

Заранее спасибо за ответ!