我正在实施SAPUI5(类似Fiori)应用程序,它在一个批处理中调用多个CREATE操作。现在我刚刚重新定义了方法/ IWBEP / IF_MGW_APPL_SRV_RUNTIME~CHANGESET_BEGIN / END,并且多次调用了正确的方法。没有错误时工作正常。
如何在CREATE_ENTITY方法中抛出业务异常以在ForntEnd层获取消息?在控制台中,我只能看到:
<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<code>005056A509B11ED1B9BF9F46AA8E82ED</code>
<message xml:lang="en">In the context of Data Services an unknown internal server error occured</message>
</error>
如何处理?
答案 0 :(得分:0)
我自己解决了。
重新定义/ IWBEP / IF_MGW_APPL_SRV_RUNTIME~CHANGESET_BEGIN而不是 实现任何代码。这将允许调用多个操作(例如。 _CREATE_ENTITY)一批。
相应地实施_CREATE_ENTITY,进行必要的检查并准备要处理的数据(创建/更新),不要在该方法中使用COMMIT。
重新定义/ IWBEP / IF_MGW_APPL_SRV_RUNTIME~CHANGESET_END并调用所有需要的BAPI或SQL INSERT / UPDATE语句。如果出现任何错误抛出/ IWBEP / CX_MGW_BUSI_EXCEPTION - 它将在前端正确处理。 COMMIT将自动调用。