点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我们在系统中配置了bgRFC。 我们使用它来启动外部Web服务。
在SBGRFCMON中,我们几乎总是收到错误:"数据库提交被应用程序阻止"。
在SM12中出现两个锁:一个在BGRFC_I_SERVER_REGISTRATION上,一个在BGRFC_O_SERVER_REGISTRATION上。
在ST22中,我们有以下转储内容:
客户.............. 200
User ................" U0000657"
交易.........""
调用程序........." CL_BGRFC_DS_EXEC_INBOUND ====== CP"
功能模块..." BGRFC_DEST_SHIP"
呼叫目标。..." d11_D11_00"
源服务器......." d11_D11_00"
终止发生在ABAP程序" SAPLHTTP_RUNTIME"中-在
" HTTP_READ_SC"中。
主程序是" SAPMSSY1"。
在源代码中,(包含)程序" LHTTP_RUNTIMEU07"的第22行有终止点。
*使用新的系统调用界面已全部废弃!!!
数据:fields_dummy类型tihttpnvp,
cookies_dummy类型tihttpcki,
data_dummy类型xstring,
content_type_dummy类型字符串,
content_name_dummy类型 字符串,
state_dummy类型为i,
parse_body_dummy类型为i,
rc类型为i。
connection-ecode =101。"未知模式
系统调用插件
id'HTTP'值'Receive'" #EC NOTEXT
id'Name'值连接 -name" #EC NOTEXT
id'EntityFields'表fields_dummy []" #EC NOTEXT
id'EntityCookies'表cookies_dummy []" #EC NOTEXT
id'EntityContentType'值content_type_dummy" #EC NOTEXT < br> id'EntityContentName'值content_name_dummy" #EC NOTEXT
id'EntityState'值state_dummy" #EC NOTEXT
id'EntityParseBody'值parse_body_dummy" #EC NOTEXT
id'EntityBody'值data_dummy" #EC NOTEXT
* id'EntityHeader'VALUE标头。
id'MessageIn'值c_msg" #EC NOTEXT
id'ConnectionId'值connection_id" #EC NOTEXT
id'RC'值rc。 " #EC NOTEXT
当我们在不使用bgRFC的情况下启动同一功能(通过Web服务)时-同步-一切正常。
任何人都知道我们可能在哪里寻找解决此问题的方法吗?
谢谢。
克里斯
bgRFC有一个提交陷阱,因为通常不建议在bgRFC单元处理中进行提交。 如果需要提交(例如,由WS处理中的HTTP调用引起的隐式DB提交),则可以选择关闭特定bgRFC单元的bgRFC提交陷阱。 这是通过接口IF_BGRFC_UNIT公开的,例如 WS出于上述原因使用了它。
因此,如果bgRFC提交陷阱负责转储,则应用程序可以选择避免提交或关闭提交陷阱。
这是解决问题的语句:
gr_unit-> if_bgrfc_unit〜disable_commit_checks()。
致谢。
感谢Kris Claes提供解决方案。
一周热门 更多>