Тип статьи

Пример построения виджета на основе Python-скрипта с фильтрацией значений показателя

Компетенции

Python разработчик, аналитик со знанием Python

Необходимые права

Редактор

Версия платформы

2.24

Статус

Сложность(синяя звезда)

Средне

Полезные ссылки

Дополнительные сведения

Ubuntu 18.04

(синяя звезда) Подробное описание

Пока нет реализации фильтрации показателя через настройки виджета, но есть возможность добиться этого через построение виджетов на Python скриптах.

Потребность:

необходимо фильтровать показатели в заданном промежутке (Min - Max)

Решение:

Используя Python-виджет отправляем специальный запрос на ViQube, получив границы диапазона из соответсвующих OLAP-фильтров, значение которых формируется вводом значений в input-полях

Запрос имеет следующий вид:

{
	"database": viQubeDB,
	"groups":
		[{
			"attributes":
				[{
					"dimid": dimID,
					"attrid": dim_attrID,
					"axis":"ROW"
				}],
			"measures":
				[{
					"alias":"0-0",
					"mid": measureID,
					# Фильтрация показателя в диапазоне
					"filters": 
						[{
              						"type": "LE",
              						"value": maxvalue
            					},
						{
              						"type": "GE",
             						"value": minvalue
            					}]
					# конец модификации
				}],
			"mgid": measure_groupID,
			"showempty": False
		}],
	"limit":
		{
			"rows":300,
			"columns":15
		}
	}

Реализация такого подхода описана в примере по ссылке