参数为空不作用

本帖最后由 2521710453 于 2016-8-17 14:31 编辑

定义了 服务器数据集 的sql代码如下,
select * from v_remit
where  pay_date BETWEEN '${从还款时间}' and  '${到还款时间}'
${if(len(batchno)==0,"","and batchno='"+batchno+"'")}

在数据预览的时候能正常工作。


但是到了web界面,就不行了,必须batchno和时间都填写才能工作,也就是说不能只填写还款时间区间,还要把batchno也写上才能获取数据 (设计的愿意是还款时间段必须写,但是batchno不一定写。)请问这个是哪里设置有误还是?谢谢!




FineReport2521710453 发布于 2016-8-17 14:26
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共17回答
最佳回答
0
yets11发布于2016-8-17 14:26(编辑于 2023-9-6 09:34)
555
最佳回答
0
gxy120313发布于2016-8-17 14:28(编辑于 2023-9-6 09:34)
555
  • 2521710453 2521710453(提问者)

    还是不行。还是预览可以,但是报表就不行。
    回复
    2016-08-17 14:34 
最佳回答
0
2521710453发布于2016-8-17 14:34(编辑于 2023-9-6 09:34)
555
  • macro_hard macro_hard

    ${if(isnull(batchno),\"\",\"and batchno=\'\"+batchno+\"\'\")}
    这样试试呢
    回复
    2016-08-17 14:39 
  • gxy120313 gxy120313

    楼主,报错不是语句的问题,是你的batchno控件值不正确,你把那个控件值改成字符串,为空就可以
    回复
    2016-08-17 14:46 
最佳回答
0
macro_hard发布于2016-8-17 14:39(编辑于 2023-9-6 09:34)
555
  • 2521710453 2521710453(提问者)

    一样的,不知道为什么 数据集这里预览就是可以,但是到了报表就是不行。
    回复
    2016-08-17 14:55 
最佳回答
0
gxy120313发布于2016-8-17 14:46(编辑于 2023-9-6 09:34)
555
  • 2521710453 2521710453(提问者)

    控件值改为字符串,不写 和  公式的效果一样的。也选择了 “允许为空”

    对了,版本是2016.02.25.03.02.43.244
    回复
    2016-08-17 14:57 
最佳回答
0
2521710453发布于2016-8-17 14:55(编辑于 2023-9-6 09:34)
555
  • macro_hard macro_hard

    and 前面加一下空格,检查一下日期参数和batchno传进来的值对不对
    回复
    2016-08-17 15:03 
最佳回答
0
2521710453发布于2016-8-17 14:57(编辑于 2023-9-6 09:34)
555
  • gxy120313 gxy120313

    你把控件改成下拉复选框试试,在不可以,加我QQ,我看下
    回复
    2016-08-17 14:59 
最佳回答
0
gxy120313发布于2016-8-17 14:59(编辑于 2023-9-6 09:34)
555
最佳回答
0
macro_hard发布于2016-8-17 15:03(编辑于 2023-9-6 09:34)
555
最佳回答
0
2521710453发布于2016-8-17 17:06(编辑于 2023-9-6 09:34)
555
  • macro_hard macro_hard

    日志里面应该可以看到sql语句,日期控件返回字符串和返回日期都试试看呢
    回复
    2016-08-17 17:09 
  • 0关注人数
  • 1065浏览人数
  • 最后回答于:2016-8-17 17:35
    活动推荐 更多
    热门课程 更多
    返回顶部