缺失表达式

查出的不同:数据集查询date是2022-06-08 15:11:20.0,数据库里是2022-06-08 15:11:20这种可以怎么修改?

image.png

image.png请问哪里错了?为空的时候是正常的,输入数据库数据就提示缺失表达式

image.png

image.png

image.png

image.png

FineReport 帆软用户o8Hv4jPkHk 发布于 2022-6-8 15:36 (编辑于 2022-6-9 08:06)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
1
CD20160914Lv8专家互助
发布于2022-6-8 15:52(编辑于 2022-12-15 21:50)

自己看一下你的这个字段在数据库里面是什么类型的?文本的还是日期类型的?你的是oracel数据库对吧

如果date不是你数据库的列字段,你直接这样写肯定错误:

trunc(date)   oracle里面取系统日期是sysdate

你先检查一下这个字段的格式。。

select 

t.*,

rownum as seqId 

FROM(

SELECT * FROM CT_EJLP_LVPI_TEST 

where 1=1 

${if(len(内批号) == 0,""," and LOT in ('" + REPLACE(内批号,",","','") + "')")} 

${if(len(驴皮编码) == 0,""," and LVLOT in ('" + REPLACE(驴皮编码,",","','") + "')")} 

   ${if(len(p1)=0,"","and trunc(DATE)=to_date('"+p1+"','yyyy-mm-dd')")}

  • 帆软用户o8Hv4jPkHk 帆软用户o8Hv4jPkHk(提问者) 日期型。数据库里是2022-06-08 15:11:20,数据集查询出来date是2022-06-08 15:11:20.0。我想在一个页面填写确定一个时间,这样可以通过时间来查找到这一时间段填写的数据。然后用的下拉复选框
    2022-06-08 15:55 
  • CD20160914 CD20160914 回复 帆软用户o8Hv4jPkHk(提问者) 日期为什么要复选。这样肯定不行呀。你的数据库是oracel吗?如果是的话,你把你的语句发出来。我帮你修改一下。。。
    2022-06-08 15:56 
  • 帆软用户o8Hv4jPkHk 帆软用户o8Hv4jPkHk(提问者) 回复 CD20160914 因为我想的日期就是一个判断这个时间段填写了一些什么数据的。我之前用的是uuid()生成一个页面的流水号。然后现在想用时间试一下。是用的oracle
    2022-06-08 16:02 
  • 帆软用户o8Hv4jPkHk 帆软用户o8Hv4jPkHk(提问者) 回复 CD20160914 select t.*,rownum as seqId FROM(SELECT * FROM CT_EJLP_LVPI_TEST where 1=1 ${if(len(内批号) == 0,\"\",\" and LOT in (\'\" + REPLACE(内批号,\",\",\"\',\'\") + \"\')\")} ${if(len(驴皮编码) == 0,\"\",\" and LVLOT in (\'\" + REPLACE(驴皮编码,\",\",\"\',\'\") + \"\')\")} ${if(len(P1) == 0,\"\",\" and DATE in (\'\" + REPLACE(P1,\",\",\"\',\'\") + \"\')\")} ORDER BY OUTLOT )t
    2022-06-08 16:02 
  • CD20160914 CD20160914 回复 帆软用户o8Hv4jPkHk(提问者) 日期直接等于就行了。。。我帮你修改一下。。
    2022-06-08 16:05 
最佳回答
0
用户6NWif5139660Lv6资深互助
发布于2022-6-8 15:37(编辑于 2022-6-8 15:40)

1=1 为什么要加括号? 你用下面这种写法试试

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

image.pngimage.png

最佳回答
0
重庆一棵草Lv4中级互助
发布于2022-6-8 15:41(编辑于 2022-6-8 15:42)

遇到这种问题。一般就是将参数带入到数据集里, 然后预览。把sql放到数据库里面去运行就知道哪里出问题了、image.png

  • 帆软用户o8Hv4jPkHk 帆软用户o8Hv4jPkHk(提问者) 我数据集里的查询date是2022-06-08 15:11:20.0,数据库里是2022-06-08 15:11:20,请问这个可以怎么修改?
    2022-06-08 15:51 
  • 重庆一棵草 重庆一棵草 回复 帆软用户o8Hv4jPkHk(提问者) 你想要什么类型的。${if(时间= \"\",\"\",\"and 数据库字段>= \'\" + left(时间,7) + \"\'\")}类似转换一下就好了
    2022-06-08 15:55 
  • 帆软用户o8Hv4jPkHk 帆软用户o8Hv4jPkHk(提问者) 回复 重庆一棵草 但是我数据库里是对的啊,就是不知道为什么数据集查出来多了个.0
    2022-06-08 15:58 
  • 4关注人数
  • 563浏览人数
  • 最后回答于:2022-12-15 21:50
    请选择关闭问题的原因
    确定 取消
    返回顶部