finereport8.0   关于填报失败,自定义报错内容的问题

如图所示,如果在填报模板没有做校验操作,但是数据库中做了约束条件,填报失败,会从数据库返回异常,这个异常信息对用户不友好,请问如何自定义这个异常信息呢?注意这个不是校验异常,不能通过校验后事件获取校验回调信息,在这种情况下,fr_verifyinfo.success值应该是true。看过了帮助文档没找到有这方面的介绍,请大神指点!

QQ截图20210403212519.png

FineReport txmsuper 发布于 2021-4-3 21:31 (编辑于 2021-4-3 21:34)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
axingLv6专家互助
发布于2021-4-4 14:29

这个是点提交之后返回的失败信息,应该用 fr_submitinfo.success 来判断

用 fr_submitinfo.failinfo 来获取失败后返回的信息

可以参考

JS实现提交事件填报失败后返回错误信息-https://help.fanruan.com/finereport/doc-view-3552.html

  • txmsuper txmsuper(提问者) 感谢!我尝试一下,不知道这个返回值在8.0版本有没有,非常感谢提供信息!
    2021-04-05 19:48 
  • txmsuper txmsuper(提问者) 我试了一下,8.0里面没有这个返回值…… 自定义JS错误 : fr_submitinfo is not defined
    2021-04-05 19:54 
  • axing axing 回复 txmsuper(提问者) ...这个要设置在填报后事件
    2021-04-06 10:10 
  • txmsuper txmsuper(提问者) 回复 axing 哦哦 我只测试了填报失败事件 我再试一下 非常感谢
    2021-04-06 13:19 
  • txmsuper txmsuper(提问者) 回复 axing 测试是可以的 非常感谢!
    2021-04-07 16:25 
最佳回答
0
圣体叶小凡Lv6高级互助
发布于2021-4-4 08:47

你这个表的一个字段是另一个表对应的外键,必须另一个表有对应值才行,现在另一个表没有对应数据,所以你这个表的字段不能插入    https://blog.csdn.net/haiross/article/details/21228229

  • txmsuper txmsuper(提问者) 这个就是为了校验用户输入是否标准,但是这个异常消息对普通用户的友好度不够,用户填错了每次还得找信息部来咨询,我这里想要修改这个异常信息的文本,让用户知道是哪个字段填错了
    2021-04-05 19:46 
  • 圣体叶小凡 圣体叶小凡 回复 txmsuper(提问者) 那个,你用sql函数,判断这个单元格的值,用sql函数在对应的表能否查询出来,填报属性里面提交校验,sql(\"JDBC1\",\"select name from table where name = \'\"+A1+\"\'\",1,1) = A1 ,然后给说明:“当前值不在某某表中,请先去那个表维护基础数据”
    2021-04-05 23:38 
  • txmsuper txmsuper(提问者) 回复 圣体叶小凡 感谢提供思路!这个方案应该是可以的,但是需要每行执行sql,数据量大是否会影响效率?我这边测试一下。如果让数据库层去判断是不是效率能高一些?这样的话能获取js返回值就最好了:) 还是感谢大神提供的方案!
    2021-04-06 08:14 
  • 圣体叶小凡 圣体叶小凡 回复 txmsuper(提问者) sql函数查询单个数据,其实不怎么影响效率的,这个我经常用,导入校验之类的我也这么用的
    2021-04-06 09:04 
最佳回答
0
15991602646Lv6初级互助
发布于2021-4-4 09:15

你这是Oracle的外键约束,应该是主子表的情况。

这种情况在数据库层面做了约束,主表没有记录的情况下肯定会返回报错。

标准处理方式是在写入子表之前,先在主表写入对应的记录,这样外键约束就合理了。

要不,你要不返回报错,就意味着约束不生效,那是不是自相矛盾了。

  • txmsuper txmsuper(提问者) 这个就是为了校验用户输入是否标准,但是这个异常消息对普通用户的友好度不够,用户填错了每次还得找信息部来咨询,我这里想要修改这个异常信息的文本,让用户知道是哪个字段填错了
    2021-04-05 19:46 
  • 3关注人数
  • 650浏览人数
  • 最后回答于:2021-4-4 14:29
    请选择关闭问题的原因
    确定 取消
    返回顶部