Я сохраняю значение одного поля в переменной в подотчете. Эту переменную я возвращаю в Основной отчет. На основе этого значения я хочу показать/скрыть полосу подробностей 2. Но я не могу реализовать это, так как значение, возвращаемое подотчетом, всегда равно Null, что меня шокирует, когда я показываю одно и то же значение в подотчете. сам он дает мне 2 (целое число). Пожалуйста, помогите мне с этим.
Как передать значение переменной из подотчета в основной отчет и показать/скрыть полосу деталей на основе этого значения в отчетах iReportDesigner Jasper?
Ответы (1)
Для первой части вашего вопроса
Вложенный отчет всегда возвращает значение Null
В своем основном отчете проверьте следующие пункты.
Вы возвращаете переменные из своего подотчета, как указано в здесь< /а>.
Если вложенный отчет и текстовое поле, в котором вы используете возвращаемое значение, размещены на одном и том же канале, вам необходимо установить
evaluationTime="Band"
для текстового поля.
Что касается более поздней части вашего вопроса,
Я хочу показать/скрыть полосу сведений 2
- С помощью инспектора отчетов выберите полосу детализации 2.
- Получите доступ к свойствам группы, используя вкладку свойств.
- Вы можете найти свойство
PrintWhenExpression
. - Отредактируйте его значение, чтобы скрыть/отобразить полосу деталей 2.
Вторая часть ответа работает по следующей логике
PrintWhenExpression
будет оцениваться в начале процесса рендеринга полосы перед началом рендеринга элементов.
Таким образом, если подотчет также находится в той же полосе, в вашем случае в полосе детализации 2, этот метод не годится.