Как вложить правила в HP Exstream? - PullRequest
2 голосов
/ 08 сентября 2010

Я использую HP Exstream (ранее Dialogue from Exstream Software) версии 5.0.x.У него есть возможность определять и сохранять логические выражения как «Правила».

Прошло около 6 лет с тех пор, как я использовал это, но кто-нибудь знает, можете ли вы определить правило в терминах другого правила?Во всплывающем окне есть «VB-подобный» язык, так что вы не вынуждены использовать форму выражения и / или переменной-реляционного выражения, но у меня нет удобной документации.: - (

Я бы хотел определить правило "NotFoo" в терминах "Foo" вместо того, чтобы повторять обратное целое. (Да, это было бы отсталым, но это, вероятно,Я буду вынужден сделать, как в других примерах того, что я поддерживаю. На самом деле, вложенные правила будут иметь много применений, если я смогу выяснить, как это сделать.

Ответы [ 2 ]

1 голос
/ 03 сентября 2018

Я опаздываю на вопрос, но так как вы должны были ответить себе, есть лучший способ справиться с этим.

Проблема с использованием функций и тестированием результата заключается в том, что есть большая вероятность, что вы добавите ненужную обработку, потому что движок будет проходить через функцию при каждом ее вызове. Не большая проблема с простой функцией, но она может легко стать проблемой, если функция сложная, особенно если она вызывается в нескольких местах.

В зависимости от времени выполнения функции (вы не сказали, был ли это уровень выполнения, уровень клиента или специфический для определенных документов), часто лучше, чтобы функция установила логическую переменную пользователя для сохранения результата, а затем в ваших правилах библиотеки вы можете просто проверить значение переменной без необходимости каждый раз проходить через функцию.

1 голос
/ 12 сентября 2010

Позже я обнаружил, что в этом случае нужно создать пользовательские «функции», которые могут ссылаться друг на друга (при условии, что вы избегаете косвенной рекурсии).Затем используйте функции для определения «правил» (и, в большинстве случаев, даже не пользуйтесь «библиотечными» правилами вместо «встроенных» правил).

...