标签:area 货主 len 参数值 参数 为空 下拉框 帆软
使用参数进行报表数据查询时,如果控件中参数值为空(控件中不输入参数值),点击查询后,不会显示任何报表数据。如下图所示:
我们需要实现的效果是,当控件中参数值为空,点击查询后,会显示报表中的全部数据。如下图所示:
第一种方式:模板参数为空
给单元格 A2 添加数据过滤条件。双击 A2 单元格,在弹出的数据列对话框中选择过滤,添加一个普通条件,让数据列货主地区等于公式if(len($货主地区)==0,nofilter,$货主地区),点击增加,点击确定,即通过添加过滤条件的方式实现参数为空选全部的效果。
注:nofilter 表示不过滤,if(len($货主地区)==0,nofilter,$货主地区) 表示参数「货主地区」为空,就不过滤数据,若不为空则以参数值进行过滤。
第二种方式:数据集参数为空
新建数据集ds1,输入数据库查询语句:
SELECT * FROM 订单
WHERE 1=1
${if(len(area) == 0,"","and 货主地区 = '" + area + "'")}
在定义数据集参数时给它设置条件来实现参数为空选全部的效果,此时数据集参数为「area」。
where 1=1 表示条件永真,防止没有参数条件时,where 后面没有有效内容导致出错。
len(area)==0 表示参数「area」为空。
"and 货主地区='"+area+"'" 中间的「area」表示取参数值,'+' 为字符串拼接符号。
${if(len(area) == 0,"","and 货主地区 = '" +area + "'")} 表示:
参数「area」为空时,查询语句相当于:SELECT * FROM 订单
当参数「area」不为空时,查询语句相当于:SELECT * FROM 订单 WHERE 1=1 and 货主地区='${area}'
标签:area,货主,len,参数值,参数,为空,下拉框,帆软 来源: https://www.cnblogs.com/tdskee/p/16152610.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。