需要一个JasperReports null参数值来显示所有

Mar*_*elo 3 parameters null jasper-reports optional

我已经解决了这个问题一段时间了,我希望你能帮助我.

我在iReport上做了一个报告,即使某些参数为空,我也希望填写报告.

这就是我所拥有的

SELECT
    evento."titulo" AS evento_titulo,
    evento."data_inicio_realizacao" AS evento_data_inicio_realizacao,
    evento."data_fim_realizacao" AS evento_data_fim_realizacao,
    evento."id" AS evento_id
FROM
    "public"."evento" evento
WHERE
    evento."id" = $P{eventoid} OR
    evento."data_inicio_realizacao" BETWEEN $P{data1} AND $P{data2}
Run Code Online (Sandbox Code Playgroud)

我希望WHERE子句是可选的,即,如果我将这些参数保留为null(或者在id的情况下为0值),我想获取所有值而不是空白报告.

可能吗?我发现有些人制作$ P {WHERE_CLAUSE}并将整个where子句作为其值传递,但它对我不起作用.

sam*_* yi 6

你可以这样做,而不是你现在正在做的动态SQL ...

select xxx
from <table>
where $P{eventoid} is null or evento."id" = $P{eventoid}
Run Code Online (Sandbox Code Playgroud)

很抱歉回复这么老的帖子......

  • 回复帖子永远不会太迟.谢谢你的帮助. (3认同)