下拉框联动数据的问题

参照文档下拉框动态数据来源做了一个下拉框联动,二级联动成功,但是再加上时间段的过滤条件后就查无结果了,求指点。


想要实现的功能就是选择查询类型:项目名称 或 项目编码,查询内容处自动带入指定时间段内的所有项目名称或项目编码

image.png

image.png

组件名如下:

image.png

用的是数据字典公式的方式,但结果一直为空,代码如下:

if($TYPE='项目名称',sql("FRDEMO","select 项目名称 from 抽取结果 where 日期 between '${d1} ' and '${d2}'",1),
if($TYPE='项目编码',sql("FRDEMO","select 项目编码 from 抽取结果 where 日期 between '${d1} ' and '${d2}'",1),""))


若取消时间段选项,则可正常联动参数,代码如下:

if($TYPE='项目名称',sql("FRDEMO","select 项目名称 from 抽取结果",1),
if($TYPE='项目编码',sql("FRDEMO","select 项目编码 from 抽取结果",1),""))


求指点。

FineReport datouvb 发布于 2021-1-5 22:04 (编辑于 2021-1-6 08:40)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
datouvbLv4见习互助
发布于2021-1-6 11:35

函数要拼接,参数的获取方式不用大括号。参考SQL函数

最佳回答
0
zsh331Lv8专家互助
发布于2021-1-5 22:20

---------

这个问题很好排查;

首先:确认下二个日期控件的控件名是否为d1&d2,注意下控件的【返回值类型】;

--------

其次:直接新建一个数据库查询;比如:

select 项目名称 from 抽取结果 where 日期 between '2021-01-01' and '2021-01-05'

-- 把对应时间区间控件值,写死执行,看是否有结果返回;

---------

逐步排查,很简单的= =#

  • datouvb datouvb(提问者) 这是一个下拉框的判断,上一级的下拉框选了项目名称的话是\"select项目名称…\",上一级的下拉框选了项目编码的话是\"select项目编码…\",不能直接用select 项目名称写死。
    2021-01-06 08:39 
  • 1关注人数
  • 349浏览人数
  • 最后回答于:2021-1-6 11:35
    请选择关闭问题的原因
    确定 取消
    返回顶部