Для работы с переменными отчета во вьювере реализована поддержка специальной панели параметров. Для добавления параметра на панель необходимо в отчете определить переменную, запрашиваемую у пользователя. При просмотре отчета во вьювере такая переменная будет автоматически добавлена на панель параметров. Поддерживаются все типы переменных отчета (обычные переменные, дата и время, диапазон, списки и др.).

 

Управление переменными на панели параметров

Для выполнения каких-либо действий перед применением параметров предназначено специальное событие onInteraction, которое будет вызвано при интерактивных действиях вьювера. В аргументах события будут переданы тип действия, а также коллекция переменных и их значений, расположенных на панели параметров. Тип действия в данном случае будет иметь значение Variables:

 

viewer.php

 

<?php

$viewer = new \Stimulsoft\Viewer\StiViewer();

$viewer->onInteraction = 'onInteraction';

$viewer->renderHtml();

?>

 

function onInteraction(args) {

if (args.action == "Variables") {

var variables = args.variables;

}

}

 

 

 

Коллекция переменных представляет собой объект, содержащий все переменные панели параметров, и их значения, например:

 

viewer.php

 

var variables = {

VariableString: "Text value",

VariableInt: 20

}

 

 

 

Допустимо изменять значения переменных, при этом тип нового значения должен соответствовать типу изменяемой переменной. Подробное описание доступных значений аргументов находится в разделе События вьювера.

 

 

Настройка панели параметров

Если работа с переменными во вьювере не требуется, то можно полностью отключить данную возможность. Для этого предназначено свойство showParametersButton, которому необходимо установить значение false.

 

viewer.php

 

<?php

$options = new \Stimulsoft\Viewer\StiViewerOptions();

$options->toolbar->showParametersButton = false;

?>

 

 

Информация

 

При такой конфигурации вьювера панель параметров не будет показана даже в том случае, если параметры присутствуют в отображаемом отчете.

 

 

 

Управление всеми переменными отчета

При необходимости контролирования всех переменных отчета, предназначено специальное событие onPrepareVariables, которое будет вызвано перед построением отчета:

 

viewer.php

 

<?php

$viewer = new \Stimulsoft\Viewer\StiViewer();

$viewer->onPrepareVariables = 'onPrepareVariables';

$viewer->renderHtml();

?>

 

function onPrepareVariables(args) {

var variables = args.variables;

}

 

 

 

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