#parameters #jasper-reports
Вопрос:
Я пытаюсь создать параметр, который зависит от другого параметра и второго запроса. Второй запрос должен быть примерно таким:
select first_name from user
where id = $P{ID_param}
ID_param вставляется пользователем, а затем этот второй параметр должен быть вычислен с помощью этого запроса, и это всего лишь одно значение, а не список.
Затем второй параметр используется для вычисления основного запроса.
Студия Jaspersoft не поддерживает второй запрос в отчете (например, singlevaluequery в Pentaho), поэтому мне приходится использовать управление вводом. Похоже, что в моем случае нет возможности создать элемент управления вводом. Я пробовал использовать тип запроса с одним выбором, а в отчете я пробовал тип параметра String и Collection, но каждый раз получаю одну и ту же ошибку
java.lang.Исключение ArrayIndexOutOfBoundsException: 0.
Я также пробовал использовать одно значение, но в этом случае я не могу использовать запрос.
Есть идеи, как создать параметр, зависящий от запроса, который возвращает только одно значение (не список), или как создать элемент управления вводом, который будет использовать запрос, возвращающий одно значение (не список)?
Комментарии:
1. используя набор вложенных данных или вложенный отчет, вы можете выполнить второй запрос, который зависит от результата первого запроса
2.
Jaspersoft studio doesn't support second query in report(like singlevaluequery in Pentaho) so I have to use Input control.
— Что ты имеешь в виду?3. Набор подданных работает только с диаграммами, перекрестными таблицами, таблицами и списками. Мой основной запрос зависит от параметра, который я должен вычислить в первую очередь. Итак, пользователь вводит первый параметр, затем мне нужно как-то вычислить второй параметр, а затем основной запрос, который зависит от второго параметра.