#javascript #parameters #dashboard #iccube #iccube-reporting
#javascript #параметры #Информационная панель #iccube #iccube-отчетность
Вопрос:
Как я могу установить событие на панели инструментов icCube, которое открывает другую панель инструментов? (и это передает параметры выбора)
Комментарии:
1. Не могли бы вы быть немного более конкретными в отношении того, чего вы пытаетесь достичь? Разве «Встроенный отчет» не охватывает то, что вам нужно?
2. К сожалению, нет. Например, в панели инструментов 1 я устанавливаю событие при щелчке строки (например, «страна») в таблице. При нажатии на страну этой таблицы я хочу, чтобы этот щелчок открывал панель инструментов 2 с выбранной страной в качестве фильтра для панели инструментов 2
Ответ №1:
icCube помог мне с аналогичным запросом с моей стороны разрешить вопрос «детализация по URL-адресу при нажатии на строку / столбец в диаграмме». Вы можете изменить это, чтобы задать URL-адрес для открытия другой панели инструментов.
Следующая настройка открывает новую вкладку браузера с поиском Google по строке, выбранной на диаграмме, и настройкой фильтра года:
Шаги:
- Определите одно или несколько событий щелчка в вашей диаграмме, например: щелчок по строке -> событие: «страна»;
- Определите фильтр многомерных выражений, например, для года, назовите его: «год»;
- В виджетах JS установите «При отправке события»;
- Добавьте и измените следующий код (этот код открывает Google с вашим параметром):
/**
* Tips:
* type - fired event type,
* event - fired event object (same as first element of args array),
* args - list of arguments passed to fireEvent function
*
* Function may return:
* - event - will replace first element of args
* - args - will replace whole args array
* - false - will cancel event
*/
function(context, $box, type, event, args) {
let yearEvent = context.reportingContext.eventMgr_._eventValues["year"];
if (!event.isEmptyEvent() amp;amp; yearEvent amp;amp; !yearEvent.isEmptyEvent() ) {
let win = window.open("https://www.google.com/search?q=" event.caption() " " yearEvent.caption() , '_blank');
win.focus();
}
return args;
}
Результат (тест)
Когда вы нажимаете, например, на страну «Нидерланды», с настройкой фильтра «2011» -> google открывается с результатом поиска «Нидерланды 2011».