公式问题

要控制数据权限,下面的公式不对吗

如果角色等于(ha开发,集团HR),否则 WHERE t2.name_spell = ${fine_username}

${if("+fine_role+" in ('ha开发','集团HR'),"","WHERE t2.name_spell = '"+fine_username+"'")}

FineReport 我再 发布于 2025-9-12 10:47
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2025-9-12 10:49

${if(find('ha开发',fine_role)>0||find('集团HR',fine_role)>0,"","WHERE t2.name_spell = '"+fine_username+"'")}

最佳回答
0
ScyalcireLv7高级互助
发布于2025-9-12 10:52(编辑于 2025-9-12 10:54)
  1. 参数引用方式错误:直接使用+fine_role+拼接字符串会导致解析异常

  2. 多角色判断不完整:当用户同时拥有多个角色时,in操作符无法正确处理逗号分隔的角色列表

${if($fine_role in ('ha开发','集团HR'), "", "WHERE t2.name_spell = '"+$fine_username+"'")}

-------------------

或者多角色

${if(find('ha开发',$fine_role)>0 || find('集团HR',$fine_role)>0, "", "WHERE t2.name_spell = '"+$fine_username+"'")}

  • 3关注人数
  • 25浏览人数
  • 最后回答于:2025-9-12 10:54
    请选择关闭问题的原因
    确定 取消
    返回顶部