2016-08-10 4 views
1

私はインターネットでいくつかの記事を探していますが、これまでのところ私の必要性について明白なことは何も見つかりませんでした。複数の事実を持つルールの実装

私の知覚のために、私はしたい - 事件の非常に簡単な評価。

rule "Send email E-mail based on rule evaluation" 
/* 
If 
    kind is equal 1 or 2 AND 
    code is equal 1 or 341 AND 
    payment is equal S 
    I do whatever I need to do 
*/ 
when 
    $item : Item((kind == 1 || kind == 2),(code == 1 || code == 341),payment = S); 
then 
    //do whatever I need to do 
end 

難易度は日付の制限のように動作します(最新の営業日となり、それは静的ではありません)新しい評価条件を追加することで、kSession.insertを使用して(ルールを養うために私のコードによって供給されなければなりませんか? )そして、アイテムからのissueDateが(私の最新の営業日の前の日付である)より小さいかどうかを比較して、何が必要なのかを比較してください。

可能ですか?どうやって?

答えて

0

これはissueDateの表現方法によって異なります。整数yyyydddとして表現されているとしましょう.yyyyは年、dddはその年の1日です。次に、フィールドの日(同じ型と書式)の別のクラスLimitを作成し、適切なオブジェクトを挿入してルールを書きます。

rule "issue Date" 
when 
    Limit($day: day) 
    Item(kind == 1 || == 2, code == 1 || == 341 , payment == 123, 
      issueDate < day) 
then 
    // ... 
end 

もちろん、他の多くの日付表記も同様に機能します。

関連する問題