以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 内部函数如何向上抛出异常 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=160207) |
-- 作者:lgzhao -- 发布时间:2021/1/24 18:23:00 -- 内部函数如何向上抛出异常 蓝老师好, 请问编写的内部函数,不打算在本函数内处理异常,而想主动引发异常,交给上层调用模块的try语句去处理。 该函数内的代码该如何编写呢? 我试了下throw语句,总是不成功。总是在函数内提示错误,而上层却捕捉不到。 我这个应用场景是: 采用数据库事务,集中将分账信息写入总账信息时。每一条总账记录在一个内部函数内通过sql语句执行,但任何一个函数发生错误都必须全部回滚。 谢谢啦
|
-- 作者:有点蓝 -- 发布时间:2021/1/24 21:32:00 -- 这种暂时没有办法,函数自己处理了。 换一种方式,在函数内部try,然后通过返回值判断是否出错,比如函数1: try 执行sql catch return false end try return true 外部调用 Dim res As Boolean = Functions.Execute("函数1") if res = false then 回滚操作 end if
|
-- 作者:lgzhao -- 发布时间:2021/1/25 6:12:00 -- 好的。非常感谢 |