Mendix自定义错误的错误处理

时间:2018-05-01 23:30:23

标签: error-handling mendix

我正在进行Mendix培训。我在错误处理部分的知识检查中遇到了一个问题。问题如下:

  

如果使用相同的微流,会发生什么情况,但主微流的错误处理是Custom with Rollback,而子微流的错误处理是Custom而不回滚?

正确答案是:

  

在将Customer对象提交到数据库时回滚Order,OrderLine和Log对象

问题上的微流是:

enter image description here

我的理解是:

当mainmicroflow发生错误时,应该回滚Create Order,但是由于主微流使用Custom with Rollback而应该提交Customer in Customer,并且在子微流中,因为submicroflow,所以应该提交Orderline和Log。使用Custom without Rollback

问题:

为什么答案是正确的The Order, OrderLine, and Log objects are rolled back while the Customer object is committed to the database

以下是图片作为证据:

enter image description here

1 个答案:

答案 0 :(得分:1)

注意我3年前曾经在他们的微流引擎(以及其他)上为Mendix工作,但很多事情都发生了变化。您似乎正在使用一个对我来说不熟悉的概念,即错误事件(退出子流程的地方),根据https://docs.mendix.com/refguide/error-event的文档重新抛出之前捕获的错误。

我猜这就是为什么会发生这种情况,并且如果你在处理错误后退出带有正常结束事件的submicroflow,则会期望提交订单/订单/日志。