sql数据源能否实现参数多选?

32187
31

伶俐 数据达人Lv4

发表于2019-2-25 15:58

悬赏1

已解决

楼主
请教一下大神们,sql数据源在写过滤条件的时候,能否实现参数多选?
参数单选的时候

在sql数据源里这样写实现了单选过滤<#=if(@wjfl="","1=1",if(@wjfl="01","MM.FIVE_CLASS='01'",if(@wjfl="02","MM.FIVE_CLASS='02'",if(@wjfl='03',"MM.FIVE_CLASS='03'",if(@wjfl='04',"MM.FIVE_CLASS='04'","MM.FIVE_CLASS='05'")))))#>

想请教一下,当参数多选的时候,如何写这个过滤条件?

万分感谢! ! !

最近看过此主题的会员

esen_551EV9Y3NG

esen_4XL2IVJCG8

wxw

pandabuxizao

chestnut

v笑向前走

hand

最佳答案
伶俐 发表于 2019-2-25 17:40
使用的是DB2数据库,资产分类与五级分类意义是一样的,一共有五类(正常,关注,次级,可疑,损失),之 ...

我觉的这个应该是勾选框组没有给默认值造成的null报错。给个默认值试试。
如果不想要给默认值的话,需要写if表达式,分为两种情况:1、勾选框组的值为空的过滤;2、勾选框组的值不为空。
另外。勾选框组得到的值的格式是1|2|3这种格式。可以用<#=@cs^"".split("\\|")#>这样的写法转换成数组。


31个回答

只看楼主

缱绻 数据领袖Lv6

发表于2019-2-25 16:05

只看该作者

取消 关注该作者的回复

沙发

sql数据源可以参考以下帖子哈
http://bbs.esensoft.com/thread-129289-1-2.html
http://bbs.esensoft.com/thread-128857-1-1.html(该帖子中有相关文档)

伶俐 数据达人Lv4

发表于2019-2-25 16:09

只看该作者

取消 关注该作者的回复

板凳

缱绻 发表于 2019-2-25 16:05
sql数据源可以参考以下帖子哈
http://bbs.esensoft.com/thread-129289-1-2.html
http://bbs.esensoft.com/t ...

好的,谢谢啦

缱绻 数据领袖Lv6

发表于2019-2-25 16:12

只看该作者

取消 关注该作者的回复

地板


不客气的。

伶俐 数据达人Lv4

发表于2019-2-25 16:20

只看该作者

取消 关注该作者的回复

5#

本帖最后由 伶俐 于 2019-2-25 16:23 编辑


你好,我使用了这个方法,但是报错了,想问一下这种写法正确么?   <#=(@zcfl.values).select(true,"MM.FIVE_CLASS in '"+@zcfl+"'").join(" or ")#>

缱绻 数据领袖Lv6

发表于2019-2-25 16:34

只看该作者

取消 关注该作者的回复

6#

伶俐 发表于 2019-2-25 16:20
你好,我使用了这个方法,但是报错了,想问一下这种写法正确么?

做什么操作的时候报错了呢,报错什么什么呢,麻烦上传下截图

伶俐 数据达人Lv4

发表于2019-2-25 16:40

只看该作者

取消 关注该作者的回复

7#

缱绻 发表于 2019-2-25 16:34
做什么操作的时候报错了呢,报错什么什么呢,麻烦上传下截图

是这样的,没有加这个过滤条件 <#=(@zcfl.values).select(true,"MM.FIVE_CLASS in '"+@zcfl+"'").join(" or ")#>  运行都是正常的,

加了这个过滤条件之后报了这个错,所以我是想问问是不是我这个过滤条件的格式写的不对?

缱绻 数据领袖Lv6

发表于2019-2-25 16:46

只看该作者

取消 关注该作者的回复

8#

伶俐 发表于 2019-2-25 16:40
是这样的,没有加这个过滤条件   运行都是正常的,

加了这个过滤条件之后报了这个错,所以我是想问问是 ...

@zcfl是什么从哪里传来的参数呢。为什么后面要加values呢?把括号去掉试试呢

伶俐 数据达人Lv4

发表于2019-2-25 17:27

只看该作者

取消 关注该作者的回复

9#

缱绻 发表于 2019-2-25 16:46
@zcfl是什么从哪里传来的参数呢。为什么后面要加values呢?把括号去掉试试呢 ...

@zcfl 这个就是多选框组的参数名称,我使用这个写法<#=@zcfl.select(true,"MM.FIVE_CLASS in '"+@zcfl+"'").join(" or ")#>,依然还是报错,想问一下多选款组还有其他写法么?   

缱绻 数据领袖Lv6

发表于2019-2-25 17:33

只看该作者

取消 关注该作者的回复

10#

伶俐 发表于 2019-2-25 17:27
@zcfl 这个就是多选框组的参数名称,我使用这个写法,依然还是报错,想问一下多选款组还有其他写法么?   ...

您用的是什么数据库呢?截图看下您设计的表样呢。

伶俐 数据达人Lv4

发表于2019-2-25 17:40

只看该作者

取消 关注该作者的回复

11#

缱绻 发表于 2019-2-25 17:33
您用的是什么数据库呢?截图看下您设计的表样呢。

使用的是DB2数据库,资产分类与五级分类意义是一样的,一共有五类(正常,关注,次级,可疑,损失),之前已经实现单选,筛选展示的数据,现在客户想要实现多选,比如同时选中 正常,次级,下面展示的合同就是这两类的

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号