2012-05-04 3 views
2

В настоящее время я пытаюсь создать отчет JasperReport с некоторым особым поведением управления вводом. Мои потребности:Управление динамическими входами JasperReports

  • четыре входное управление, два из них dateboxes, остальные являются селективными кнопками
  • в зависимости от выбора радио кнопки, один из databoxes должен быть видны или не
  • так, если опция 1, показаны оба датабокса; если выбрана опция 2, показывается только одно поле даты

Интересно, есть ли «чистое» решение - ничего не найдено.

Любые указатели будут полезны.

ответ

2

Печать, когда выражение не относится к элементам управления вводами на сервере JasperReports.

Нет встроенной поддержки для скрытия и отображения входного управления, основанного на значении другого. Инфраструктура для каскадных элементов управления вводами, безусловно, может быть расширена для достижения этого ... но это не было бы тривиальным.

Путь, который я бы взял, - это настроить страницу .jsp, отображающую элемент управления вводом. Существует раздел в Руководстве для конечных пользователей сервера JasperReports под названием «Настройка формы входных элементов управления», которая поможет вам начать этот путь.

+0

Спасибо, что ответили. Ваше заявление подтверждает мое предположение; кажется его единственным способом, настроив страницу .jsp без слишком сложного вещания. – kinkee

0

Для части даты, вы можете использовать print when expression, чтобы определить, видны ли определенные блоки отчета.

Для других «ввода», если вы имели в виду некоторые данные, которые вы хотите отобразить внутри отчета, вы можете сделать в своем отчете Parameter, а затем установить Parameter с пользовательского ввода перед экспортом отчета.

+0

Эй, Ранги, спасибо за ваш ответ. Я уже пытался установить printWhen выражение, но элементы управления ввода, к сожалению, не принимают этот атрибут. В основном, я хочу добиться: если выбран вариант 1, тогда запрос будет использовать обе даты, иначе будет отображаться только одно поле даты и использовать его значение в запросе. – kinkee

+0

Что вы подразумеваете под «dosen't accpet this attribute»? Вам действительно нужно добавить дополнительную информацию. Какова ваша заявка? Как пользователь дозы экспортирует отчет? Какая у вас проблема, когда вы пытаетесь использовать 'printWhenExpression'? –

+0

Ну, у меня есть отчет, развернутый на JasperServer, который оценивает данные определенного диапазона дат - этот диапазон задается пользователем либо путем установки обоих дат (FromDate-ToDate), либо установки только одного поля даты (FromSpecifiedDate-today). Пользователь должен иметь возможность выбирать по радио-кнопке, какие дата-боксы должны отображаться. InputControls связаны с параметрами, определенными в моем отчете, поэтому невозможно установить printWhen с помощью или я ошибаюсь? Установив атрибут, я получаю сообщение об ошибке «Атрибут« printWhen »не разрешается появляться в элементе« параметр »« – kinkee

Смежные вопросы