Skip to Content
0
Aug 21, 2020 at 02:11 AM

是否有API有回滚的功能?

118 Views

向专家们咨询一个问题。 模拟出现一个场景和问题: 例如交单货单业务需要执行以下三步,如果第1,2传输SAP成功 ,但是第3步失败,S4C系统或者API接口可否像SQL(关系型数据一样)有“事务”概念? 1、行业务创建分批(物料批次,批次数量)(创建批次 API_BATCH_SRV/Batch) 2、根据创建批次返回的结果行项目修改库存地点(创建特性 API_BATCH_SRV/BatchCharc) 3、物料凭证(原材料收货或半成品入库),交货单过帐(API_MATERIAL_DOCUMENT_SRV/A_MaterialDocumentHeader) 比如说:一张采购单50条物料,在收货时(第1步和第2步)一条一条调用接口去创建,要循环50 次,才能调用 第3步。但是有遇到停机的情况,刚好打断第三步导致失败,并且不能重复操作,只能对之前循环执行50次的第一步和第二步生成的凭证进行冲销,即需要冲销50次第二个步骤产生的回执,再冲销50次第一个步骤产生的凭证,这个工作量就很大,而且先后顺序错了,就很麻烦,一系列业务问题。SAP是否有什么机制或者接口可以一次性按顺序回滚或者冲销前两个步骤产生的凭证呢?如同像数据库一样,能对这几个API产生的凭证打上标识?一旦出错,连续相关的内容可以按照顺序reverse。 感谢指导!