成功运行impex时如何触发自动cron作业

2020-09-12 12:42发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)尊敬的专家, 我有一个要求,当...

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

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


尊敬的专家,

我有一个要求,当通过impex添加新产品时,需要触发工作流程。

我知道WorkflowTempalte中的激活脚本功能如何工作。 该方法的局限性在于,只有在后台产品主控室中创建新产品时,才将其附加到工作流中。 通过impex添加新产品时,我需要将其附加到工作流程中。

有人可以提供一些见解吗?

注意:Iam使用Hybris 1808版本。

谢谢!

4条回答
暮风yp
2020-09-12 13:21 .采纳回答

我对工作流程引擎不是很熟悉,但是会使用impex afterEach 工作吗?

例如 像

  INSERT_UPDATE产品; code [unique = true]; catalogVersion(catalog(id),version)[unique = true]
  "#%groovy%afterEach:workflowService.createWorkflow(workflowTemplateService.getWorkflowTemplateForCode('my-workflow-template'),impex.lastImportedItem,userService.getUserForUID('workflow-owner'))"
  ; 1234;默认值:暂存
  ; 5678;默认值:分期
  

您需要确保已启用脚本来运行impex,并且旧式模式已关闭 impex.legacy.scripting = false 。 这应该从模板" my-workflow-template"创建一个新的工作流,该模板由用户" workflow-user"拥有,并附加刚刚导入的产品。

如果您需要启用传统模式,那么也可以使用Beanshell来实现,但是它更加冗长且难以阅读。

  INSERT_UPDATE产品; code [unique = true]; catalogVersion(catalog(id),version)[unique = true]
  "#%afterEach:ctx = Registry.getApplicationContext(); ctx.getBean("" workflowService"")。createWorkflow(ctx.getBean("" workflowTemplateService"")。getWorkflowTemplateForCode("" my-workflow-template""),  impex.getLastImportedItem(),ctx.getBean("" userService"")。getUserForUID("" workflow-owner""))""
  ; 1234;默认值:暂存
  ; 5678;默认值:分期
  

afterEach周围的文档有点稀疏,但是这里有一些示例

https://help.hybris.com/1808/hcd/8bdf595b86691014b902e0974f71491a.html

这里有一些脚本编写

https://help.hybris.com/1808/hcd/640172cbde9149ab8eb818180544020a.html

一周热门 更多>

相关问答