1

Отчёт через SDK.

Тема: Отчёт через SDK.

Добрый день!

Стоит задача импортировать часть данных из Виалона (в частности пробег)...

залогинился, получил SSID,

из Post-запроса
http://192.168.1.123:8026/ajax.html?&svc=core/search_items&params={"spec":{"itemsType":"","propName":"","propValueMask":"*","sortType":""},"force":"0","flags":383,"from":"0" ,"to":"0xffffffff"}&ssid=628c051167fba0743fe7d8cc50734551

выдрал авто и его датчики

...,{"nm":"Fiat Ducato с123вв","cls":3,"id":496,"gd":"3db104c53f9cbbc45ce7d09f77ee7495","prp":{},"pup":{"dehr":"0","mcoef":"1","mmi":"0","msl":"0","mus":"60"},"crt":371,"bact":0,"uid":"221447","hw":40,"ph":"+79998887766","psw":"","ugs":[503,1300],"flds":{"1":{"id":1,"nm":"ФИЛИАЛ","vl":"ОФИС"}},"flds_max":-1},

авто:  id:496
датчик uid:221447

запросом
http://192.168.1.123:8026/ajax.html?&svc=core/search_items&params={"spec":{"itemsType":"avl_resource","propName":"reporttemplates","propValueMask":"*","sortType":"reporttemplates","propType":"reporttemplates"},"force":1,"flags":0x8000,"from":0,"to":0,"or_logic":0}&sid=628c051167fba0743fe7d8cc50734551

прочитал список шаблонов отчетов:

{"searchSpec":{"itemsType":"avl_resource","propName":"reporttemplates","propValueMask":"*","sortType":"reporttemplates"},"dataFlags":32768,"totalItemsCount":2,"indexFrom":0,"indexTo":0,"items":[{"rep":{"1":{"id":1,"nm":"Остановки\/стоянки","ct":"avl_unit"},"2":{"id":2,"nm":"Пробег (групповой)","ct":"avl_unit_group"},"3":{"id":3,"nm":"Пробег","ct":"avl_unit"},"5":{"id":5,"nm":"Топливо","ct":"avl_unit"}},"repmax":-1}]}

выбрал тот что id=5

осталось только получить сам сам отчёт...
Пишу запрос...
http://192.168.1.123:8026/ajax.html?&svc=report/exec_report&params={"reportResourceId":496,"reportTemplateId":5,"reportObjectId":221447,"reportObjectSecId":0,"interval":{"from":1445817600,"to":1445903999,"flags":0},"tzOffset":25200,"lang":"ru"}&ssid=628c051167fba0743fe7d8cc50734551

получаю Error=7.

Что сделать по другому?

2

Отчёт через SDK.

Re: Отчёт через SDK.

Проблема в том, что в reportResourceId нужно подавать id ресурса, содержащего шаблон отчёта. А Вы туда подали id объекта.
А в reportObjectId нужно подавать id объекта, а вы подали uid.

Head of Wialon Local Department
Gurtam
3

Отчёт через SDK.

Re: Отчёт через SDK.

Проблема в том, что в reportResourceId нужно подавать id ресурса, содержащего шаблон отчёта. А Вы туда подали id объекта.
А в reportObjectId нужно подавать id объекта, а вы подали uid.

ок, а как получить " id ресурса, содержащего шаблон отчёта"?

4

Отчёт через SDK.

Re: Отчёт через SDK.

В запрос получения шаблонов flags подайте 0x8001 (вместо 0x8000) - таким образом в результаты будет включена базовая информация по самим ресурсам. Нечто подобное: "items":[{"nm":"test_resource","cls":4,"id":16,"rep":{"5":{"id":5,"nm":"Топливо","ct":"avl_unit"}},"repmax":-1}]

Head of Wialon Local Department
Gurtam
5

Отчёт через SDK.

Re: Отчёт через SDK.

Спасибо, проблема решена!