2013-11-27 3 views
0

저는 JBOSS DROOLS를 처음 사용했습니다. DROOLS 규칙에서 의사 코드보다 아래에 imp가 필요합니다. 나 똑똑한 방식으로 나쁜 규칙을 알려주세요.똑똑한 방법으로 JBOSS DROOLS RULE을 구현하십시오

if(Prod_of_Interest == "Signature Card" || Prod_nm == "001") 
    seg= '5555' 
else if(Prod_of_Interest == "SBI Platinum Card" || Prod_nm == "002") 
    seg= '6666' 
else if(Prod_of_Interest ==SBI Platinum Card == "SBI Gold & More Card" || Prod_nm == "003") 
    seg= '7777' 
else if(Prod_of_Interest ==SBI Platinum Card == "Yatra SBI Card" || Prod_nm == "004") 
    seg= '8888' 
else if(Prod_of_Interest ==SBI Platinum Card == "SpiceJet SBI Card" || Prod_nm == "005") 
    seg= '9999' 
else if(Prod_of_Interest ==SBI Platinum Card == "SBI Maruti Card" || Prod_nm == "006") 
    seg= '1111' 
else if(Prod_of_Interest ==SBI Platinum Card == "TATA Card" || Prod_nm == "007") 
    seg= '2222' 
else if(Prod_of_Interest ==SBI Platinum Card == "SBI Oriental Bank of Commerce Platinum Card" || Prod_nm == "008") 
    seg= '3333' 

Drools가이

rule "Card1" 
    when 
     CARD(Prod_of_Interest == Signature Car || Prod_nm : 001) 
    then 
     Response s= new Response() 
     s.setSeg("5555");  
end 
+0

해당 스타일의 규칙 집합이 커질 것으로 예상되는 경우 (예 : 카드 및 제품 추가) 의사 결정 테이블이나 템플릿을 참조하여 별도의 규칙을 직접 작성하지 않아도됩니다. 그러나, 당신이 그 규칙을 작성한 방법은 꽤 유효합니다. "insertLogical (s)"이 있어야 다른 객체에서 검색이나 사용을 위해 응답 객체를 작업 메모리에 넣을 수 있습니다. 당신이하려는 일에 대해 좀 더 많은 정보를 제공해야한다고 생각합니다. – Steve

+0

Prod_of_Interest == SBI 플래티넘 카드 == "SBI 골드 및 그 외 카드" && 또는 및 || 그 사이에? – Narkha

답변

0

주의 규칙 : 이러한 조건을 반영하는 규칙 세트와 일치하지 않는 경우가 캐스케이드. 대책이 수립되지 않으면 규칙이 일치하고 독립적으로 실행됩니다.

이것은 실제로 답변이 아닙니다. Steve의 조언을 따르고 자세한 정보를 제공해주십시오.

관련 문제