Следующий вопрос связан с формированием отчетов.
Пытаемся выполнить следующую последовательность действий:
Получаем список объектов и выбираем объект по которому хотим получить отчет:
Request = "svc=core/search_items&sid="+AnsiString(eid.c_str())+"¶ms={\"spec\":{\"itemsType\":\"avl_unit\",\"propName\":\"sys_name\",\"propValueMask\":\"*\",\"sortType\":\"\"},\"force\":1,\"flags\":1,\"from\":0,\"to\":100}";
получаем в ответ:
{"searchSpec":{"itemsType":"avl_unit","propName":"sys_name","propValueMask":"*","sortType":"","propType":""},"dataFlags":1,"totalItemsCount":2,"indexFrom":0,"indexTo":1,"items":[{"nm":"Ключавто_Toyota camry A951EX123","cls":2,"id":253051,"uacl":550624038903},{"nm":"Ключавто_Mercedes","cls":2,"id":318222,"uacl":825504042999}]}
Выбираем объект с id = 318222
Далее получаем идентификаторы шаблонов и список идентификаторов водителей для каждого из ресурсов (он в нашем приложении один)
Request = "svc=core/search_items&sid="+AnsiString(eid.c_str())+"¶ms={\"spec\":{\"itemsType\":\"avl_resource\",\"propName\":\"sys_name\",\"propValueMask\":\"*\",\"sortType\":\"\"},\"force\":0,\"flags\":8449,\"from\":0,\"to\":100}";
в ответ имеем:
{"searchSpec":{"itemsType":"avl_resource","propName":"sys_name","propValueMask":"*","sortType":"","propType":""},"dataFlags":8449,"totalItemsCount":1,"indexFrom":0,"indexTo":0,"items":[{"nm":"Krasnodar1","cls":3,"id":545712,"rep":{"1":{"id":1,"n":"водитель","ct":"avl_driver","c":21360},"2":{"id":2,"n":"пробег автомобиля","ct":"avl_unit","c":27508},"3":{"id":3,"n":"reportTemplate2","ct":"avl_unit","c":20650}},"repmax":0,"drvrs":{"1":{"id":1,"n":"КАРТА 1","c":"1470154","ds":"","p":"","r":0,"ck":6515},"2":{"id":2,"n":"КАРТА 3","c":"1470134","ds":"","p":"","r":0,"ck":6515},"3":{"id":3,"n":"КАРТА 2","c":"1470153","ds":"","p":"","r":0,"ck":6515}},"drvrsmax":0,"uacl":-1}]}
Из этого выбираем шаблон для отчета с id = 3 и водителя с id = 1. id нашего ресурса, содержащего шаблоны для отчетов и водителей равен 545712
Теперь пытаемся сформировать запрос на формирование отчета:
Request = "svc=report/get_result_rows&sid="+AnsiString(eid.c_str())+
"¶ms={\"reportResourceId\":545712,\"reportTemplateId\":3,\"reportObjectId\":318222,\"reportObjectSecId\":1,\"interval\":{\"from\":"+IntToStr(time(NULL)-3600)+",\"to\":"+IntToStr(time(NULL))+",\"flags\":0}}";
В ответ получаем
В чем может быть проблема?