关于下拉框参数联动的问题

我的问题来源于这个贴

https://help.fanruan.com/finereport/doc-view-1284.html

这个例子里讲的操作是:先选择地区,再选择省份,最后选择城市,如何能实现倒着选择,或者随意选择,即先选择城市,再选择省份,再选择地区,比如选择城市济南,那么省份就只有一个选项山东,地区就有个选项华东。

其实这三个参数存在了包含关系。

可是在实际应用中,有很多情况下,三个参数并不存在关系,比如说城市、业务员、产品这三个参数,可能在数据库里并不存在特殊的关系。

那么我就想在参数面板上不按顺序筛选了,比如,我先筛选A产品,业务员的下拉菜单就显示与A产品有关的业务员。

问题来了,我选择好A产品后,业务员里有小王、小张,我再选择小王,发现刚才的A产品被清空了,得重新选择,这次先选择业务员,发现有小王、小张、还有小李

如何能做到选择第二个条件时,第一个条件不被清空呢?

image.png

image.png

image.png

把CPT拿去研究吧,会的直接改一下我的CPT

参数联动.cpt

FineReport nhb2318 发布于 2021-9-13 13:00 (编辑于 2021-9-13 13:43)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
Rose_RubyLv6初级互助
发布于2021-9-13 14:14(编辑于 2021-9-13 16:19)

只要前后的关系都有的话就不会被清,没有关联关系就会被清

如果想实现从后面反过来选数据时,默认带出该规则里的第一条数据就在if判断里中加条件,加sql查询

image.png

image.png

  • nhb2318 nhb2318(提问者) 我的妈呀,sql语句都这么多,如何能看懂? 能不能改改我的cpt
    2021-09-13 15:23 
  • Rose_Ruby Rose_Ruby 回复 nhb2318(提问者) 也就只是复制粘贴呀,那个数据集只是控件单独做的单个数据字典
    2021-09-13 15:26 
  • 霜凡 霜凡 回复 Rose_Ruby 你的数据集那里怎么建的文件夹
    2021-09-13 15:34 
  • nhb2318 nhb2318(提问者) 我还是不明白你的话“只要前后的关系都有的话就不会被清,没有关联关系就会被清”
    2021-09-13 15:41 
  • Rose_Ruby Rose_Ruby 回复 霜凡 下载插件数据集分组
    2021-09-13 16:12 
最佳回答
0
15922204585Lv6高级互助
发布于2021-9-13 13:05

第一个条件是一个是数据集;第二个条件是一个数据集,且在里写参数(第一个条件)

最佳回答
0
黄源Lv6中级互助
发布于2021-9-13 13:08

三个下拉都用sql() ${if()} 加条件

  • nhb2318 nhb2318(提问者) 我的数据字典是这样写的,不行吗? 省份控件:ds1.select(省份,业务员=if(len($ywy) = 0, nofilter, $ywy)&&产品=if(len($chanpin) = 0, nofilter, $chanpin)) 业务员控件:ds1.select(业务员,产品=if(len($chanpin) = 0, nofilter, $chanpin)&&省份=if(len($shen) = 0, nofilter, $shen)) 产品控件:ds1.select(产品,业务员=if(len($ywy) = 0, nofilter, $ywy)&&省份=if(len($shen) = 0, nofilter, $shen))
    2021-09-13 15:44 
最佳回答
0
霜凡Lv5中级互助
发布于2021-9-13 13:42

只要下拉框的数据字典没有参数,就不会清空,下拉框的数据字典有参数的时候,参数值改变了才会清空

  • nhb2318 nhb2318(提问者) 你分析的很对,因为参数值变了,肯定是要变化的呀,要不怎么叫联动呢? 咱们现在要解决的问题是保留住刚才选择过的参数值
    2021-09-13 13:45 
最佳回答
0
snrtuemcLv8专家互助
发布于2022-3-18 22:36

看了你的cpt,问题出在,你的过滤都用到了一个数据集,所以出问题,每个下拉框都单独一个数据集就可以了

image.png

  • 6关注人数
  • 498浏览人数
  • 最后回答于:2022-3-18 22:36
    请选择关闭问题的原因
    确定 取消
    返回顶部