2013-12-09 6 views
0
public void executeRules(IlrRule[] rules){ 
     IlrRuleset rulesetNew = new IlrRuleset(); 
     IlrContext ctxt = new IlrContext(rulesetNew); 
     IlrTask task = ruleset.getTask("ExecFlow#exe"); 
     IlrRuleTaskRunner runner = ctxt.getRuleTaskRunner(task); 
     runner.setActiveRules(rules); 
     int fired = 0; 
     runner.runInitialActions(); 
     fired += runner.runBody(); 
     runner.runFinalActions(); 

} 

규칙 그룹에서 동적 규칙 집합을 만드는 방법은 무엇입니까? 이 그룹은 동적입니다. 나는 IBM의 ODM을 사용하고 은 8.0.1ILOG 동적 규칙 집합

답변

0

모든 Java 구현 사라, 우리가 IRL 언어를 사용,이 솔루션입니다 :

우리는 범위를 정의하고 우리는 동적으로

을 규칙을 선택
scope= {exe.R05,exe.R04,exe.R03} 

body = dynamicselect() { 
    return selectedFunction(context.getRuleset().allRules); 
} 
0
body = dynamicselect() {  
    return selectedFunction(context.getRuleset().allRules);  
} 

실행하려는 규칙을 사용자 정의하기에 충분합니다.

1

동적 선택에주의하십시오. 규칙이 많으면 규칙 세트의 실행 시간을 크게 늘릴 수 있습니다.