Impex删除促销规则和流口水规则

2020-09-16 13:49发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好,我有很多晋升,我们已经连续...

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

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


您好,我有很多晋升,我们已经连续两年制定了晋升规则(因此也制定了流口水规则)。 因此,系统过载。 我正在考虑创建Impex,以消除很多不再有意义的促销活动。 所以我在想的标题是:REMOVE PromotionSourceRule; 代码[unique = true]->消除促销规则

和消除DroolsRules的标头尚未准备好,因为代码不是唯一的。 我正在考虑使用PK。

以前有人尝试过吗?

2条回答
能不能别闹
2020-09-16 14:42 .采纳回答

我尝试过,但是从内存上看效果不佳。 我结束了编写一个可存档所有已过期规则的常规脚本。 我想您可以将其修改为在归档后删除。 每天晚上都会在cron上运行。

 导入静态org.mockito.Mockito.when;
  导入静态org.mockito.MockitoAnnotations.initMocks;
  导入de.hybris.bootstrap.annotations.UnitTest;
  导入de.hybris.platform.ruleengine.RuleEngineActionResult;
  导入de.hybris.platform.ruleengine.RuleEngineService;
  导入de.hybris.platform.ruleengine.model.AbstractRuleEngineRuleModel;
  导入de.hybris.platform.ruleengine.model.DroolsKIEModuleModel;
  导入de.hybris.platform.ruleengineservices.RuleEngineServiceException;
  导入de.hybris.platform.ruleengineservices.compiler.RuleCompilerException;
  导入de.hybris.platform.ruleengineservices.compiler.RuleCompilerProblem.Severity;
  导入de.hybris.platform.ruleengineservices.compiler.RuleCompilerResult;
  导入de.hybris.platform.ruleengineservices.compiler.RuleCompilerService;
  导入de.hybris.platform.ruleengineservices.compiler.impl.DefaultRuleCompilerProblem;
  导入de.hybris.platform.ruleengineservices.compiler.impl.DefaultRuleCompilerResult;
  导入de.hybris.platform.ruleengineservices.enums.RuleStatus;
  导入de.hybris.platform.ruleengineservices.maintenance.RuleCompilerPublisherResult;
  导入de.hybris.platform.ruleengineservices.maintenance.RuleCompilerPublisherResult.Result;
  导入de.hybris.platform.ruleengineservices.model.AbstractRuleModel;
  导入de.hybris.platform.servicelayer.model.ModelService;
  导入de.hybris.platform.ruleengine。*;
 
  从{promotionsourcerule}中选择$ promotionSourceRulesQuery =" select {pk},{code},{enddate},其中({enddate} '8796153643099')"
  ruleCompilerService = spring.getBean('ruleCompilerService');
  platformRuleEngineService = spring.getBean('platformRuleEngineService');
  flexibleSearchService = spring.getBean('flexibleSearchService');
  ruleMaintenanceService = spring.getBean(" ruleMaintenanceService")
 
  列出sourceRules = flexibleSearchService.search($ promotionSourceRulesQuery).getResult();
  对于(sourceRules中的sourceRule){
   //ruleCompilerService.compile(sourceRule);
    ruleMaintenanceService.archiveRule(sourceRule);
                                  }
  platformRuleEngineService.initializeAllRulesModules();

  

一周热门 更多>