如何在HP Exstream中嵌套规则?

时间:2010-09-08 18:44:38

标签: formatting rule-engine hp-exstream

我正在使用HP Exstream(以前来自Exstream Software的Dialogue)版本5.0.x.它具有定义和保存布尔表达式为“规则”的功能。

我使用它已经有6年了,但有人知道你是否可以根据另一条规则定义规则?弹出窗口中有一个“类似VB”的语言,所以你不是强制使用和/或变量关系表达式,但我没有方便的文档。 : - (

我想用“Foo”来定义一个规则“NotFoo”,而不是重复整个事物的反转。 (是的,这会被延迟,但这可能是我将被迫做的事情,就像我正在维护的其他例子一样。)实际上,嵌套规则会有很多用途,如果我能弄明白怎么做的话。 / p>

2 个答案:

答案 0 :(得分:1)

我后来发现在这种情况下需要做的是创建用户定义的“函数”,它们可以相互引用(只要你避免间接递归)。然后,使用这些函数来定义“规则”(并且,在大多数情况下,甚至不用“库”规则而不是“内联”规则)。

答案 1 :(得分:1)

我迟到了这个问题,但是由于您必须回答自己,所以有一种更好的方法来处理它。

使用函数并测试结果的问题是,您很有可能会添加不必要的处理,因为引擎每次调用时都会运行该函数。简单的函数并不是一个大问题,但是如果函数很复杂,尤其是在多个地方调用它,它很容易成为问题。

根据函数的时间安排(您没有说它是运行级别,客户级别还是特定于特定文档的),通常最好让该函数设置一个User Boolean变量来存储结果,在库规则中,您只需检查变量的值即可,而不必每次都运行该函数。