Как вызвать функцию таблицы решений Drools Excel - PullRequest
0 голосов
/ 04 октября 2019

У меня есть таблица решений drools, созданная в Excel. Я создал функцию в разделе заголовков Functions | function boolean checkLimits(Policy policy) { | ...function body... | return false; | } Как я вызываю эту функцию из ячейки СОСТОЯНИЕ?

Я пробовал только checkLimits(policy);, Functions.checkLimits(policy); и this.checkLimits(policy);, но я получаю ошибку всепохож на:

text=Unable to Analyse Expression Functions.checkLimits(policy): [Error: unable to resolve method using strict-mode: com.chubb.Result.Functions()] [Near : {... Functions.checkSectionLimits(p ....}]

1 Ответ

0 голосов
/ 07 октября 2019

Я предполагаю, что вы называете «раздел заголовков» местом, где вы определили RuleSet, Import, Variables и т. Д. Это место, где должны быть определены функции.

Чтобы правило вызывало функцию,Вы должны вызывать его в том же столбце, что и ячейка ДЕЙСТВИЯ, и во второй строке ДЕЙСТВИЯ, как на следующем снимке экрана

drools decision table

Функция всегдаВы можете передать текст ячейки в виде строки, используя ключевое слово $ param. В приведенном выше примере, если в сеанс вставлен ключ «RUL-001», RULE-001 НЕ будет запущен, поскольку функция возвращает false, если код «F».

...