Элементы управления вводом на JasperServer — снимите флажок «Видимо», получите ошибки

У меня есть отчет, который я создал в iReport professional 4.5.1 и развернул на JasperServer. У меня есть параметр в моем отчете, который используется для указания столбца сортировки:

Имя: profit_loss_sort
Класс параметра: java.lang.String
Использование в качестве подсказки: Да
Выражение значения по умолчанию: "FAC_ID"

Затем у меня есть еще один параметр, который принимает $P{profit_loss_sort} и использует его для создания предложения ORDER BY для моего запроса:

Название: profit_loss_sort_function
Класс параметра: java.lang.string
Использование в качестве подсказки: Нет
Выражение значения по умолчанию: "ORDER BY" +$P{profit_loss_sort}+"ASC"

Когда для параметра $P{profit_loss_sort} установлено значение visible, это отлично работает в iReport и на JasperServer. Я установил гиперссылку для каждой метки столбца, и когда вы нажимаете на них, отчет сортируется по каждому столбцу.

Когда я снимаю видимый флажок для попытки $P{profit_loss_sort} запустить отчет в первый раз, я получаю сообщение об ошибке Oracle о том, что мне не хватает выражения (ORA-00936: отсутствует выражение). Я этого не понимаю, потому что предложение ORDER BY в моем запросе:

$P!{profit_loss_sort_function}

поэтому JasperServer должен принять значения по умолчанию для этих двух параметров и создать предложение ORDER BY. На самом деле, когда я запускаю отчет из iReport с помощью параметра «Запустить отчет JasperServer», он действует соответствующим образом и заполняет предложение ORDER BY по умолчанию. $P{profit_loss_sort} является обязательным, и на стороне JasperServer я снял флажок «всегда запрашивать» для своих элементов управления вводом.

Я не хочу, чтобы $P{profit_loss_sort} был видимым элементом управления вводом, но я все же хочу, чтобы он использовал значение по умолчанию при первом запуске отчета. Есть предположения?


person Lisa    schedule 21.06.2012    source источник


Ответы (1)


Я понял - у меня есть основной отчет, который передает параметры в подотчет. Я установил значение по умолчанию для параметра $P{profit_loss_sort} в подотчете, но не в основном отчете.

Я установил для него значение по умолчанию в основном отчете, и теперь, когда я снимаю этот «видимый» флажок, отчет JasperServer скрывает этот элемент управления вводом, и я могу сортировать, используя свои гиперссылки.

person Lisa    schedule 22.06.2012