【发布时间】:2013-07-15 21:00:58
【问题描述】:
我想用 JasperReports 创建一个带有多个参数的报告,当用户传递所有参数时,报告会正确生成,但如果缺少一个参数,则不会生成任何内容,我使用此请求
SELECT
t.*,
u."name" AS username,
c."name" AS componentName,
s."designation" AS statusName,
pr."name" AS priorityName,
p."name" AS projectName
FROM
"component" c INNER JOIN "ticket" t ON c."id" = t."component_id"
INNER JOIN "personne" u ON t."personne_id" = u."id"
INNER JOIN "status" s ON t."status_id" = s."id"
INNER JOIN "priority" pr ON t."priority_id" = pr."id"
INNER JOIN "project" p ON c."project_id" = p."id"
WHERE
pr.name = $P{priority}
and u.login = $P{userLogin}
and s.designation = $P{status}
and t.creation_date between $P{start} and $P{end}
and c.name = $P{componenet}
即使缺少一个参数,您能帮我生成报告吗?
【问题讨论】:
-
我认为您正在寻找的是在报告上设置 When No Data 设置以在为空时显示 no data 带(确保你添加乐队),或者可能**所有部分,没有数据**
-
是的,我验证了它我在 rapport 中获得了列的标题,但我真正想要的是与我的应用程序的 IHM 中的过滤器同步以提取报告。事实上,在这个过滤器中当用户默认没有选择任何参数时,所有列表都会出现,我想提取完全相同的东西,但是在我的报告中,当我没有选择任何参数时,我使用的请求只显示列的名称
-
换句话说,我希望用户没有输入任何参数,我给所有参数(%)以提取列表
标签: jasper-reports report