1 在展示列表中【查询出的结果列表】

①  定义参数,以供在报表中引用
点击配置-》参数,增加查询条件中所需要的参数
注意:参数名称一定要用英文字母名,以免造成麻烦

② 编辑数据集--检索条件
切换至检索条件标签页,编写条件[where子句的条件部分]

(字段1=?or? is NULL) AND (字段2 like ? AND 字段3 like ?)

问题:这里的问号由报表系统根据用户输入的值作一个动态的替换
怎么替换的呢,又是怎么知道哪个问号对应哪个参数?

答案:必须定义一个参数引用序号,使得问号与参数之间形成一一对应

③ 编辑数据集--参数
在参数Tab中分别对SQL中的四个问号进行了一一引用
即@参数名称1对应于SQL中的第一个问号
第二个问号还是引用@参数名称1
第三个引用的是'%'+@参数名称2+'%',实际这个就可以生成模糊查询的语句
同理,第四个引用'%'+@参数名称3+'%'也是模糊查询条件。

注意:
(1)在SQL编辑器中,检索条件要和参数设置个数相同
(2)查询条件在数据库中字段的类型不能为Date
     处理方法 :把数据库xmkssj、项目完成时间字段改为了Varchar[ - - || ]

④ 在jsp页面中设置一个条件为generateParamForm="yes"
自动生成参数表单

2 参数表单【查询条件处】

如果觉得自动生成的参数表单不好看或者要实现下拉列表功能 可以自己制作参数表单设置

① 设计参数表单模板
② 定义变量名
这个变量名就是展现裂变参数的名称,要一致,大小写敏感。
用于将变量名和参数名对应,这样就可以完成数据的映射了。

 

SQL语句

SELECT FINANCE.XMMC,FINANCE.TBKS,FINANCE.XMND,FINANCE.BSJDW,FINANCE.KSFZR,FINANCE.XMKSSJ,FINANCE.XMWCSJ 
FROM FINANCE 
WHERE FINANCE.XMMC like ?  
AND  FINANCE.TBKS like ?  
AND  FINANCE.XMND like ? 
AND  FINANCE.BSJDW like ?  
AND  FINANCE.KSFZR like ?  
AND  FINANCE.XMKSSJ like ?  
AND  FINANCE.XMWCSJ like ?


执行错误,SQL参数异常或者SQL语句语法错误

FINANCE.XMMC like ?
AND  FINANCE.TBKS like ?  
AND  FINANCE.XMND like ?
AND  FINANCE.BSJDW like ?  
AND  FINANCE.KSFZR like ?  
AND  FINANCE.XMKSSJ like ?  
AND  FINANCE.XMWCSJ like ?(FINANCE.XMMC like ?)  
AND  (FINANCE.TBKS like ?)  
AND   (FINANCE.XMND like ?) 
AND  (FINANCE.BSJDW like ?)  
AND  (FINANCE.KSFZR like ?)  
AND  (FINANCE.XMKSSJ like ?)  
AND  (FINANCE.XMWCSJ like ?) 
SELECT WORKITEM.UUID,WORKITEM.TITLE,WORKITEM.TASKSOURCE,WORKITEM.ASSIGNTIME 
FROM WORKITEM 
WHERE WORKITEM.UUID like ? 
AND WORKITEM.TITLE like ?

 

(1)在SQL编辑器中,检索条件要和参数设置个数相同
(2)查询条件在数据库中字段的类型不能为Date
处理方法 :把数据库xmkssj、项目完成时间字段改为了Varchar