Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Комментарий: Исправил ошибки в коде из-за новых демоданных

Для того, чтобы в виджетах, использующих Python-скрипты, учитывались права доступа пользователей:

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

Блок кода
languagepy
myheaders = {'X-API-VERSION': '<версия API>','authorization': 'Bearer ' + ACCESS_TOKEN}
query = {<Json-запрос на Viqube>} #Запросы сохраняются на сервере с установленным ViQube в директории хранящей лог-файлы /docker-volume/viqube/apiLog/
resp = requests.post('http://<адрес сервера, на котором установлен ViQube>/viqube/metadata/query',headers=myheaders,json=query) # запрос на ViQube 


Пример – Запрос на Viqube с использованием ACCESS_TOKEN и демо-данных:

Блок кода
languagepy
import requests
myheaders = {'X-API-VERSION':'3.4','authorization':'Bearer '+ ACCESS_TOKEN}
query =
query = {"database": "MagazinViQube", "groups": [{"attributes": [
    {"attrid": "YEAR", "axis": "ROW", "dimroleid": "Data_prodazhipay"},
    {"attrid": "MONTH_NAME", "axis": "ROW", "dimroleid": "Data_prodazhipay"},
    {"attrid": "Gorod__attr_Goroda", "axis": "COLUMN", "dimroleid": "Gorod_otpravkiprodazhi"}], "filters": [[]],
                                           "measures": [{"alias": "0-0", "mid": "SrednyayaObem_tsenaprodazh"}],
                                           "mgid": "Fakticheskie_prodazhi_v_rublyahrubli", "showempty": False, "time": [
        {"dimroleid": "Data_prodazhipay", "from": "2016-10-13", "to": "2019-01-14"}]}],
         "limit": {"columns": 30, "rows": 100}}
resp=requests.post('http://192.168.44.217/viqube-load-balanced/metadata/query',headers=myheaders,json=query)
response = resp.json()

Пример – Объекты на основе одного из доступных классов:

Блок кода
languagepy
#-Гистограмма- 
my_chart = DataFrame()
my_chart.cols = response['columns']
my_chart.rows = response['rows']
# Возвращаемые значения response['values'] нужно транспонировать
my_chart.values = [list(x) for x in zip(*response['values'])]

#-filter1- 
myFilter = Filter()
myFilter.rows = response['rows']

#-filter2- 
myFilter2 = Filter() 
myFilter2.rows = response['columns']


Примечание

Для выполнения Python-скриптов, которые используют данные из ViQube, с установленным  установленным Python сервером, должен быть установлен pyton версии 3.6+ и библиотека 'requests'.