1

Ошибка 4 при создании отчета

Topic: Ошибка 4 при создании отчета

Получил информацию о шаблоне с помощью report/get_report_data.
При создании отчета с помощью report/update_report. Пишет ошибку {"error":4,"reason":"WRONG_PARAMS"}.
Помогите понять в чем причина, что не так с параметрами?

wialon/ajax.html?svc=report/update_report&params=
{ "itemId":"13498204", "id":0, "callMode":"create", "n":"НовыйПрограмный", "ct":"avl_unit", "p":"{\"bind\":{\"avl_unit\":[]}}",
"tbl":[
{ "n":"unit_stats", "l":"Статистика",
"c":"",
"cl":"",
"cp":"",
"s":"[\"address_format\",\"time_format\",\"us_units\"]",
"sl":"[\"Address\",\"Time Format\",\"Measure\"]",
"p":"{\"address_format\":\"0_10_5\",\"time_format\":\"%Y-%m-%E_%H:%M:%S\",\"us_units\":0}",
"sch": { "f1":0, "f2":0, "t1":0, "t2":0, "m":0, "y":0, "w":0 },
"f":0 },
{ "n":"unit_trips", "l":"Поездки",
"c":"[\"time_begin\",\"time_end\",\"fuel_level_begin\",\"fuel_level_end\"]",
"cl":"[\"Начало\",\"Конец\",\"Нач. уровень\",\"Кон. уровень\"]",
"cp":"[{},{},{},{}]",
"s":"",
"sl":"",
"p":"{\"grouping\":\"{\\\"type\\\":\\\"day\\\"}\"}",
"sch": { "f1":0, "f2":0, "t1":0, "t2":0, "m":0, "y":0, "w":0 },
"f":4097 }
] }&sid=09ce2ad12ed0db7d3847048a4481ba9c

1

Ошибка 4 при создании отчета

(edited by RedRock 13/03/2019 11:44:44)

Re: Ошибка 4 при создании отчета

как правило связана с неверным параметром, у вас "itemId":"13498204", значение число, а не текст, вроде должно быть "itemId":13498204, т.е. значение без кавычек. Вы к части ковычек добавляете \, у другой части их нет, обычно это делают для отключения автозамены ковычек, возможно проблема в этом.
Если отправляете по HTTP, то русские символы луче заменить кодами %FF
sid не надо публиковать wink, а то я ща как зайду, как наворочу :р
Совет: по сути список params это JSON-структура, я бы вам посоветовал создать класс под ккоманду с параметрами, а внутри него сделать конвертер в JSON-структуру, и эту JSON-структуру, добавлял бы к запросу. У меня на JAVA:
line = String.format(QUERY_FORMAT, getCommand(), getParams(), sid);
где
QUERY_FORMAT="https://hst-api.wialon.com/wialon/ajax.html?%s&params=%s&sid=%s";
getCommand(): Remote API команда в формате строки
getParams(): JSON-структуру с данными для запроса
sid: идентификатор сессии в формате текста.

FFA0-0BBB-8911-15BB

https://www.reg.ru
2

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

anistratenko wrote:

Получил информацию о шаблоне с помощью report/get_report_data.
При создании отчета с помощью report/update_report. Пишет ошибку {"error":4,"reason":"WRONG_PARAMS"}.
Помогите понять в чем причина, что не так с параметрами?

wialon/ajax.html?svc=report/update_report&params=
{ "itemId":"13498204", "id":0, "callMode":"create", "n":"НовыйПрограмный", "ct":"avl_unit", "p":"{\"bind\":{\"avl_unit\":[]}}",
"tbl":[
{ "n":"unit_stats", "l":"Статистика",
"c":"",
"cl":"",
"cp":"",
"s":"[\"address_format\",\"time_format\",\"us_units\"]",
"sl":"[\"Address\",\"Time Format\",\"Measure\"]",
"p":"{\"address_format\":\"0_10_5\",\"time_format\":\"%Y-%m-%E_%H:%M:%S\",\"us_units\":0}",
"sch": { "f1":0, "f2":0, "t1":0, "t2":0, "m":0, "y":0, "w":0 },
"f":0 },
{ "n":"unit_trips", "l":"Поездки",
"c":"[\"time_begin\",\"time_end\",\"fuel_level_begin\",\"fuel_level_end\"]",
"cl":"[\"Начало\",\"Конец\",\"Нач. уровень\",\"Кон. уровень\"]",
"cp":"[{},{},{},{}]",
"s":"",
"sl":"",
"p":"{\"grouping\":\"{\\\"type\\\":\\\"day\\\"}\"}",
"sch": { "f1":0, "f2":0, "t1":0, "t2":0, "m":0, "y":0, "w":0 },
"f":4097 }
] }&sid=09ce2ad12ed0db7d3847048a4481ba9c

Как было сказано выше, itemId должен быть целым числом, не строкой. Зарезервированные символы должны должны кодироваться соответствующими кодами при отправке HTTP запроса.

3

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Исправил параметр itemId на числовой.
Сверил структуру шаблона, в том числе и символы \ со структурой полученной с помощью report/get_report_data - полностью совпадает.
Параметры в виде JSON-структуры проверяю с помощью http://jsonviewer.stack.hu/ - ошибок нет.

Пока что ошибка без изменений {"error":4,"reason":"WRONG_PARAMS"}

4

Ошибка 4 при создании отчета

(edited by RedRock 13/03/2019 13:00:26)

Re: Ошибка 4 при создании отчета

anistratenko Отправьте пустой параметр params={}. В ответ придет минимальный список свойств и их тип. Я так решал эту проблему, до абстракции этого процесса.

FFA0-0BBB-8911-15BB

https://www.reg.ru
5

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Отправил пустой параметр wialon/ajax.html?svc=report/update_report&params={}
теперь получаю {"error":1}

6

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Проблема решилась изменением "time_format".
вместо "p": "{\"address_format\":\"0_10_5\",\"time_format\":\"%Y-%m-%E_%H:%M:%S\",\"us_units\":0}"
надо "p": "{\"address_format\":\"0_10_5\",\"time_format\":\"_\",\"us_units\":0}"

7

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Теперь при выполнении wialon/ajax.html?svc=report/update_report
ошибка {"error":7}
если я правильно понимаю то проблема с правами и доступом.
что надо сделать?

8

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

anistratenko дать права пользователю/tokin для работы с отчетами шаблона.
https://sdk.wialon.com/wiki/ru/sidebar/ … rmat/token
Если доступ по сессии, то права пользователя должны допускать создание и редактирование шаблонов отчета.

FFA0-0BBB-8911-15BB

https://www.reg.ru
9

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

anistratenko wrote:

Проблема решилась изменением "time_format".
вместо "p": "{\"address_format\":\"0_10_5\",\"time_format\":\"%Y-%m-%E_%H:%M:%S\",\"us_units\":0}"
надо "p": "{\"address_format\":\"0_10_5\",\"time_format\":\"_\",\"us_units\":0}"

В поле формата даты есть символ %, за которым обычно идет код символа при передаче HTTP запроса. Поэтому сам символ % нужно кодировать с помощью %25, т.е. ваша строка с форматом даты/времени должна выглядеть %25Y-%25m-%25E_%25H:%25M:%25S

10

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Вопрос про создание отчета командой wialon/ajax.html?svc=report/update_report  и ошибку доступа {"error":7}.

Я правильно понимаю, что доступные права можно посмотреть командой:
wialon/ajax.html?svc=token/login&params={ "token":"*****", "operateAs":"", "fl":16 }

Результатом которой будет:
{"features":{
      "unlim": 0,
      "svcs": {
           "create_resources": 1,
           "create_unit_groups": 1,
           "create_units": 0,
           "create_users": 1,
           "custom_fields": 1,
           "custom_reports": 1,
           "reports": 1,
           "reportsdata": 1,
           "reportsmngt": 1,
           "reporttemplates": 1 } } }

Права на создание отчета это "create_units" ?

11

Ошибка 4 при создании отчета

(edited by chdi 19/03/2019 09:51:57)

Re: Ошибка 4 при создании отчета

anistratenko wrote:

Вопрос про создание отчета командой wialon/ajax.html?svc=report/update_report  и ошибку доступа {"error":7}.

Я правильно понимаю, что доступные права можно посмотреть командой:
wialon/ajax.html?svc=token/login&params={ "token":"*****", "operateAs":"", "fl":16 }

Результатом которой будет:
{"features":{
      "unlim": 0,
      "svcs": {
           "create_resources": 1,
           "create_unit_groups": 1,
           "create_units": 0,
           "create_users": 1,
           "custom_fields": 1,
           "custom_reports": 1,
           "reports": 1,
           "reportsdata": 1,
           "reportsmngt": 1,
           "reporttemplates": 1 } } }

Права на создание отчета это "create_units" ?

fl = 16 возвращает доступные сервисы по биллингу (создание ресурсов, отчеты, создание объекты и т.д)
Для проверки прав токена fl = 4 (    информация по токену ) , в ответе (в "token" ) параметрах fl - флаги доступа токена, items    список id элементов, к которым токену разрешен доступ, если пустой - ко всем элементам

Diana Cheley
Wialon Hosting Expert
Gurtam
12

Ошибка 4 при создании отчета

(edited by RedRock 18/04/2019 02:24:40)

Re: Ошибка 4 при создании отчета

Запрос:
https://hst-api.wialon.com/wialon/ajax. … 22fl%22:1}

https://hst-api.wialon.com/wialon/ajax.html?svc=resource/driver_status&params={"phoneNumber":"+791340?????","password":"91340?????","app":"noname","f":1}

В ответ:
{"error":4}

Водитель на ТС, телефон и мобильный ключ тот.

В чем проблема?

FFA0-0BBB-8911-15BB

https://www.reg.ru
13

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Ап, обратите внемание ктонить....

FFA0-0BBB-8911-15BB

https://www.reg.ru
14

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Попробуйте заэнкодить параметры. Очень частая проблема с номером телефона (замените + на %2B)

15

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

shmi, без изменений.

FFA0-0BBB-8911-15BB

https://www.reg.ru
16

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

RedRock
В запросе resource/driver_status error:4 кидается в 2х случаях
1) phoneNumber и password невалидые (отсутствуют либо не текст)
2) водителя/объекта с указанным телефонным номером не существует

17

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

shmi не помогло, пытался так и с сидом, может надо в разделе апса прописать рельное приложение?

FFA0-0BBB-8911-15BB

https://www.reg.ru
18

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

RedRock
У меня этот же запрос (с моим номером водителя, паролем и сидом) проходит

19

Ошибка 4 при создании отчета

(edited by RedRock 23/04/2019 09:46:21)

Re: Ошибка 4 при создании отчета

shmi wrote:

RedRock
У меня этот же запрос (с моим номером водителя, паролем и сидом) проходит

Можете скинут http-запрос (со скрытым номером телефона, ключа и sid), если не сложно?

FFA0-0BBB-8911-15BB

https://www.reg.ru
20

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

На здоровье (номер изменён)

https://hst-api.wialon.com/wialon/ajax.html?svc=resource/driver_status&params={"phoneNumber":"%2B123456789","password":"1","app":"noname","fl":1}

Этот запрос открывается в браузере
https://forum.gurtam.com/misc.php?action=pun_attachment&item=9429&download=0

21

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

задам вопрос в существующей теме
пытаюсь изменить параметры в таблице посещения геозон уже существующего отчета:

wialon/ajax.html?svc=core/batch&params=[{"svc":"report/update_report", 
"params":{
        "itemId":19172456,
        "id":1,
        "callMode":"update",
        "tbl": [{
            "n": "unit_stats",
            "l": "%D0%A1%D1%82%D0%B0%D1%82%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0",
            "c": "",
            "cl": "",
            "cp": "",
            "s": "[\"address_format\",\"time_format\",\"us_units\"]",
            "sl": "[\"Address\",\"Time Format\",\"Measure\"]",
            "p": "{\"address_format\":\"1254096896_10_5\",\"time_format\":\"%25Y-%25m-%25E_%25H:%25M:%25S\",\"us_units\":0}",
            }, {
            "n": "unit_zones_visit",
            "l": "%D0%93%D0%B5%D0%BE%D0%B7%D0%BE%D0%BD%D1%8B",
            "c": "[\"zone_name\",\"zone_descr\",\"time_begin\",\"time_end\",\"duration_in\",\"mileage\"]",
            "cl": "[\"%D0%93%D0%B5%D0%BE%D0%B7%D0%BE%D0%BD%D0%B0\",\"%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5\",\"%D0%92%D1%80%D0%B5%D0%BC%D1%8F%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0\",\"%D0%92%D1%80%D0%B5%D0%BC%D1%8F%20%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D0%B0\",\"%D0%94%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C%20%D0%BD%D0%B0%D1%85%D0%BE%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D1%8F\",\"%D0%9F%D1%80%D0%BE%D0%B1%D0%B5%D0%B3\"]",
            "cp": "[{},{},{},{},{},{}]",
            "s": "",
            "sl": "",
            "p": "{\"geozones\":\"gz19172456_66,gz19172456_67,\",\"duration\":{\"min\":30,\"flags\":1}}",
            }
            ]
        }
    }]&sid=<SID>

так же получаю

{"error":4,"reason":"WRONG_PARAMS"}

Вроде все рекомендации предложенные выше выполнил, а все равно не работает

22

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Добрый день!
sealowner, уточните, пожалуйста, какие именно параметры в таблице нужно поменять?

Diana Cheley
Wialon Hosting Expert
Gurtam
23

Ошибка 4 при создании отчета

(edited by sealowner 07/05/2019 10:07:32)

Re: Ошибка 4 при создании отчета

"p": "{\"geozones\":\"gz19172456_66,gz19172456_67,\",\"duration\":{\"min\":30,\"flags\":1}}",

В таблице

"n": "unit_zones_visit",

Проще говоря хочу формировать отчет, перед этим устанавливая в нем перечень геозон, которые требуется проверить.

24

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Добрый день, sealowner

проверьте пробелы, судя по примеру кода есть, и они лишние.

"p": "{\"geozones\":\"gz19172456_66,gz19172456_67,\",\"duration\":{\"min\":30,\"flags\":1}}",

после двоеточия не должно быть пробела.

Diana Cheley
Wialon Hosting Expert
Gurtam
25

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

wialon/ajax.html?svc=core/batch&params=[{"svc":"report/update_report",
"params":{
       "itemId":19172456,
       "id":1,
       "callMode":"update",
       "tbl":[{
           "n":"unit_stats",
           "l":"%D0%A1%D1%82%D0%B0%D1%82%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0",
           "c":"",
           "cl":"",
           "cp":"",
           "s":"[\"address_format\",\"time_format\",\"us_units\"]",
           "sl":"[\"Address\",\"Time Format\",\"Measure\"]",
           "p":"{\"address_format\":\"1254096896_10_5\",\"time_format\":\"%25Y-%25m-%25E_%25H:%25M:%25S\",\"us_units\":0}",
           }, {
           "n":"unit_zones_visit",
           "l":"%D0%93%D0%B5%D0%BE%D0%B7%D0%BE%D0%BD%D1%8B",
           "c":"[\"zone_name\",\"zone_descr\",\"time_begin\",\"time_end\",\"duration_in\",\"mileage\"]",
           "cl":"[\"%D0%93%D0%B5%D0%BE%D0%B7%D0%BE%D0%BD%D0%B0\",\"%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5\",\"%D0%92%D1%80%D0%B5%D0%BC%D1%8F%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0\",\"%D0%92%D1%80%D0%B5%D0%BC%D1%8F%20%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D0%B0\",\"%D0%94%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C%20%D0%BD%D0%B0%D1%85%D0%BE%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D1%8F\",\"%D0%9F%D1%80%D0%BE%D0%B1%D0%B5%D0%B3\"]",
           "cp":"[{},{},{},{},{},{}]",
           "s":"",
           "sl":"",
           "p":"{\"geozones\":\"gz19172456_73,gz19172456_74,gz19172456_75,gz19172456_76,\",\"duration\":{\"min\":30,\"flags\":1}}",
           }
           ]
       }
   }]&sid=<SID>

пробелы убрал, результат тот же

26

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

sealowner, зачем это: "report/update_report" вкладывать в это: svc=core/batch. может стоит одним отчетом воспользоваться?

FFA0-0BBB-8911-15BB

https://www.reg.ru
27

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

чтобы одним запросом вызвать

report/cleanup_result
report/update_report
report/exec_report
28

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Нашел пару незакрытых запятых, ошибка немного поменялась

[{"error":4}]
29

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Добрый день, sealowner

скиньте в ЛС, пожалуйста, токен, с которым логин осуществляете. Проверим под вашим пользователем запрос.

Diana Cheley
Wialon Hosting Expert
Gurtam
30

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Добрый день. Вопрос подходит под тему.
Посылаю запрос:

/wialon/ajax.html?svc=report/exec_report&
    params={
        "tzOffset":7200,
        "lang":"ru",
        "reportResourceId":3592,
        "reportTemplateId":4,
        "reportObjectId":56448,
        "reportObjectSecId":0,
        "interval":{
            "from":1557705600,
            "to":1557791999,
            "flags":0
        }
    }&sid=8c25db50c017611eca9e086d31acfe49

Отчет по пробегу.
Возвращает ошибку:  {"error":4,"reason":"WRONG_PARAMS"},
Что может быть не так?

31

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Добрый день, Андрей_

проверьте id шаблона, ресурса. Судя по их значению вы делаете запрос на Wialon Local?

Также можете попробовать убрать параметры "tzOffset":7200,"lang":"ru". Обычно они в запросе на выполнение отчета не передаются.
Если нужно данные из отчета получить относительно часового пояса, то после логина лучше выполнять запрос render/set_locale

Diana Cheley
Wialon Hosting Expert
Gurtam
32

Ошибка 4 при создании отчета

(edited by Андрей_ 16/05/2019 15:27:42)

Re: Ошибка 4 при создании отчета

да, на Wialon Local
Да я вроде, все id взял правильно.
id ресурса
/wialon/ajax.html?svc=core/search_items&params={%22spec%22:{%20%22itemsType%22:%22avl_resource%22,%20%22propName%22:%22reporttemplates%22,%20%22propValueMask%22:%22*%22,%20%22sortType%22:%22%22%20},%20%22force%22:1,%20%22flags%22:1,%20%22from%22:0,%20%22to%22:0}&sid=
id отчетов
/wialon/ajax.html?svc=core/search_items&params={%22spec%22:{%20%22itemsType%22:%22avl_resource%22,%20%22propName%22:%22reporttemplates%22,%20%22propValueMask%22:%22*%22,%20%22sortType%22:%22%22%20},%20%22force%22:1,%20%22flags%22:8192,%20%22from%22:0,%20%22to%22:0}&sid=

и соответственно id объекта, то есть машины

Может что-то с id ресурса?

33

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Возможно другой id ресурса. Проверьте через поиск элемента по этому id с флагами отчетов , какие отчеты и с какими id есть в ресурсе
Также можете попробовать убрать параметры "tzOffset":7200,"lang":"ru". Обычно они в запросе на выполнение отчета не передаются.
Если нужно данные из отчета получить относительно часового пояса, то после логина лучше выполнять запрос render/set_locale

Diana Cheley
Wialon Hosting Expert
Gurtam
34

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

По id ресурса данный отчет есть:
{"id":4,"n":"!Контроль движения \/ Поездки (объект)"

Часовой пояс убрал.

wialon/ajax.html?svc=report/exec_report&
    params={
        "reportResourceId":3295,
        "reportTemplateId":4,
        "reportObjectId":3307,
        "reportObjectSecId":0,
        "interval":{
            "from":1557728992,
            "to":1557790192,
            "flags":0
        }
    }&sid=

но, к сожалению, результат не поменялся:
{"error":4,"reason":"WRONG_PARAMS"}

35

Ошибка 4 при создании отчета

Re: Ошибка 4 при создании отчета

Не знаю каким чудом, но получилось так:

.../wialon/ajax.html?params=%7B%22reportResourceId%22%3A+3295%2C+%22reportTemplateId%22%3A+4%2C+%22reportObjectId%22%3A+3307%2C+%22reportObjectSecId%22%3A+0%2C+%22interval%22%3A+%7B%22from%22%3A+1557728992%2C+%22to%22%3A+1557790192%2C+%22flags%22%3A+0%7D%7D&svc=report%2Fexec_report&sid=...


Спасибо.