点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
创建新的规则引擎,并在执行任何满足条件的规则时在该引擎上发布新规则。 在对该规则执行操作时,它会尝试从ruleActionContext中获取RuleEngineResultRAO。 并返回null。
由于我是规则引擎的新手,因此不确定在哪里创建RuleActionContext。 尽管ruleActionContext中提供了其他事实(RAO),但RuleEngineResultRAO中提供了其他信息。
在promotionEngine上执行相同规则时没有错误。
提前感谢您的帮助:)
嗨,RuleActionContext将在RAOAction类中设置。
您必须在RuleActionContext(具有提升结果值的Rao对象)中插入结果子Rao。
您可以参考OOB可用的RAOAction。 我正在为您的推荐从RuleAddCouponRAOAction添加示例。
在这里,如果您看到AddCouponRAO是具有优惠券ID的结果RAO对象,请接收 您需要在RuleActionContext中将其设置为Action Strategy中的值。 参考行号60
但是,如果事实中已经存在RAO,则只需要更新更新即可。 请参阅第59行。
在这方面是否需要帮助,请告诉我。
您好,非常感谢您的答复,
但是我在这里面临另一个问题,我试图从ruleActionContext(第56行)中获取RuleEngineResultRao,并在响应中获取null。
这与规则发布有关,因为当我查看规则的生成的DRL时,"变量"中缺少RuleEngineResultRao。 看一下DRL:
注意:我创建了一个新的规则模块,并仅在该模块上发布了规则,而不是在促销模块上发布规则。
谢谢
:您的规则生成器存在问题,请检查我们设置这些值的DroolsTargetCodeGenerator的generateRuleContentRule()。
一周热门 更多>