Drools引导决策表:查找规则中导致规则失败的特定条件。

Drools引导决策表:查找规则中导致规则失败的特定条件。,drools,kie,kie-workbench,Drools,Kie,Kie Workbench,我使用了kie workbench中的引导决策表。 这是我写的规则 rule "Row 1 Coupons" dialect "mvel" when f1 : CartDetails( couponCode == "OS1000" , startDate after "12-Jan-2017" , expiryDate before "31-Jul-2017" , minPurchaseAmt >= 5000.0 , excludeProductCodes excludes "GC

我使用了kie workbench中的引导决策表。 这是我写的规则

rule "Row 1 Coupons"
dialect "mvel"
when
    f1 : CartDetails( couponCode == "OS1000" , startDate after "12-Jan-2017" , expiryDate before "31-Jul-2017" , minPurchaseAmt >= 5000.0 , excludeProductCodes excludes "GC669010,GC669011,GC669012,GC669013,GC669014,GC669015,GC669016,GC669017,GC669018,GC669019,GC669001,GC669002,GC669003,GC669004,GC669005,GC669006,GC669007,GC669008,GC669009,AC669001,GC669047,GC669052,RN669001,ER855036" , newUser == true )
then
    f1.setDiscountAmt( 1000.0 );
    f1.setDiscountPercentage( 0.0 );end

在规则失败的情况下,我想知道是哪个特定条件导致了该规则失败

为了知道哪些条件不满足,你需要做的是分别检查每个条件。您将无法使用开箱即用的指导决策表执行此操作。虽然我们可以建立一个系统来生成所需的规则,但是你有没有参考资料。我可以在不同的.drl文件中手动为每个条件编写单独的规则吗?在这种情况下,我如何从决策表单元格中获取值?engage.redhat.com/forms/rule-design-patterns中的第2.4节讨论了您的问题。-如果您想访问电子表格以获取数据,则必须编写相应的代码。Drools中使用了一个获取单元格内容的库;你可以从代码中学习如何做到这一点。也许测试场景是你的一个选择,你检查过了吗?为了知道哪些条件不满足,你必须做的是分别检查每个条件。您将无法使用开箱即用的指导决策表执行此操作。虽然我们可以建立一个系统来生成所需的规则,但是你有没有参考资料。我可以在不同的.drl文件中手动为每个条件编写单独的规则吗?在这种情况下,我如何从决策表单元格中获取值?engage.redhat.com/forms/rule-design-patterns中的第2.4节讨论了您的问题。-如果您想访问电子表格以获取数据,则必须编写相应的代码。Drools中使用了一个获取单元格内容的库;您可以从代码中学习如何实现这一点。也许测试场景是您的一个选择,您对此进行了检查吗?