帆软sql根据获取到的部门来查询数据if条件一直不生效

WHERE create_date = '${rq}'

${if(GETUSERDEPARTMENTS(3, 2) == "生产指挥中心", if(len(GETUSERDEPARTMENTS(3,2))==0,"and (1=1","", " and (host_department = '" + GETUSERDEPARTMENTS(3,2) + "'"),"")}

image.png

FineReport 帆软用户Hm97F60nva 发布于 2024-11-25 17:48 (编辑于 2024-11-25 18:06)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
帆软用户Hm97F60nvaLv0见习互助
发布于2024-11-25 19:29(编辑于 2024-11-25 19:30)

${if(find("生产指挥中心",GETUSERDEPARTMENTS())>0,"","and dept = '" + GETUSERDEPARTMENTS() + "'")}

使用find函数 可以直接获取部门 进行sql拼接

最佳回答
0
舞曦Lv5见习互助
发布于2024-11-25 17:51(编辑于 2024-11-25 17:56)

你第一个if缺少结束 ,"") 括号WHERE create_date = '${rq}'

${if(GETUSERDEPARTMENTS(3, 2) == "生产指挥中心", if(len(GETUSERDEPARTMENTS(3,2))==0,"and (1=1","", " and (department = '" + GETUSERDEPARTMENTS(3, 2) + "'"),"")}

  • 1关注人数
  • 199浏览人数
  • 最后回答于:2024-11-25 19:30
    请选择关闭问题的原因
    确定 取消
    返回顶部