AmbiguousItemException从impEx更新动态过程定义

2020-09-10 17:36发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我们正在运行Sap co...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我们正在运行Sap commerce 1811,使用动态流程定义时,您可以创建如下的impEx:

  INSERT_UPDATE DynamicProcessDefinition; 代码[unique = true]; 活性; 内容;
                                        ; 过程; 真实;  "
  <?xml version ='1.0'encoding ='utf-8'?>
  
 
      ...
  
  ";
  

这第一次运行正常,您获得版本0。第二次运行于版本1,但是,在版本2中,您从ImpExImportReader获得了AmbiguousItemException。 impEx为了更新动态流程定义是否错误?

我的示例基于此处的impEx文档: https://help。 hybris.com/1811/hcd/8c3065f186691014bdd09fa25ffa7e6a.html

顺便说一句,当从Backoffice进行更新时,它可以正常工作,并且该版本如预期那样发生碰撞,并且可以使用新版本。

更新:

如果我将impEx更改为

  INSERT_UPDATE DynamicProcessDefinition; 代码[unique = true];  active [unique = true]; 版本[unique = true]; 内容;
                                            ; 过程; 真实;  4;  "
      <?xml version ='1.0'encoding ='utf-8'?>
      
     
          ...
      
      ";
  

它不会停留在AmbiguousItemException上,而是停留在:

DynamicProcessDefinitionModel()的验证失败,并显示消息"具有相同代码(进程)的内容已经存在。

那么.. Hybris/SAP Commerce是否不支持从impEx更新流程定义,或者我在这里做错了吗?

3条回答
DafaDDDa
2020-09-10 17:47

谢谢,真的很有帮助。

对于我们的环境(同样是SAP Commerce 1811),我们不需要在impex中设置属性版本,因为它会在AbstractDynamicContentPrepareInterceptor.HistoricalContentCreator#incrementActiveModelVersion方法中抛出NPE

在本例中,有效的impim是:

 更新DynamicProcessDefinition [batchmode = true]; code [unique = true]; active [unique = true]; content;
      ; process; true;" 
  ...
        



  

一周热门 更多>