日期传参

year、month 、day 三个参数从另一页面传值过来,day 为空时,过滤年

月的值,否则业务日期 就等 三个参数拼在一起的值。这么写是错误的

${if(len('${day}') == 0,   " 年月='${year}-${month}'",   " AND 业务日期='${year}-${month}-${day}'"

)}

FineReport 库兜南 发布于 2025-7-2 09:52
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
snrtuemcLv8专家互助
发布于2025-7-2 09:54(编辑于 2025-7-2 09:55)

${if(len(day) == 0,   "AND 年月='"+year+"-"+month+"'",   " AND 业务日期='"+year+"-"+month+"-"+day+"'")}

  • 库兜南 库兜南(提问者) 如果要用日期区间 前面要 在day -1 怎么写?${if(len(day) == 0, "", " AND TO_CHAR(a.FBIZDATE,'yyyy-mm-dd')>='"+year+"-"+month+"-"+day+"'")}
    ${if(len(day) == 0, "", " AND TO_CHAR(a.FBIZDATE,'yyyy-mm-dd')<='"+year+"-"+month+"-"+day+"'")}
    2025-07-02 16:13 
  • snrtuemc snrtuemc 回复 库兜南(提问者) 直接
    ${if(len(day) == 0, "", " AND TO_CHAR(a.FBIZDATE,'yyyy-mm-dd')<='"+year+"-"+month+"-"+(day-1)+"'")}
    但是注意,你的day需要设置格式,如果是04这个格式,可以改成
    ${if(len(day) == 0, "", " AND TO_CHAR(a.FBIZDATE,'yyyy-mm-dd')<='"+year+"-"+month+"-"+format(day*1-1,"00")+"'")}
    2025-07-02 16:15 
  • 库兜南 库兜南(提问者) 回复 snrtuemc 如果是跨月 呢怎么修改?${if(len(day) == 0, "", " AND TO_CHAR(a.FBIZDATE,'yyyy-mm-dd')>='"+year+"-"+month+"-"+format(day*1-1,"00")+"'")}
    ${if(len(day) == 0, "", " AND TO_CHAR(a.FBIZDATE,'yyyy-mm-dd')<='"+year+"-"+month+"-"+format(day*1,"00")+"'")}
    2025-07-07 10:44 
最佳回答
0
runnerLv7资深互助
发布于2025-7-2 09:54

${if(len('day') == 0,   " 年月='year'+'-'+'month'",   " AND 业务日期='year'+'-'+'month'+'-'+'day'"

)}

最佳回答
0
用户k6280494Lv6专家互助
发布于2025-7-2 09:54(编辑于 2025-7-2 09:56)

${if(len(day) == 0,   " 年月='"+CONCATENATE(year,'-',month+"'",   " AND 业务日期='"+CONCATENATE(year,'-',month,'-',day}+"'"

)}

  • 4关注人数
  • 44浏览人数
  • 最后回答于:2025-7-2 09:56
    请选择关闭问题的原因
    确定 取消
    返回顶部