0

15 秒ごとに起動する一連のルールがあります。

これらのルールを単体テストしたいので、この期間の値を動的に設定したいと考えています。もっと、アプリの設定に入れたいです。この値は、20 を超えるルールで使用される可能性があります...)。

これどうやってするの ?出来ますか ?

これが私のルールです:

ルール「私のルール名」
期間 15000
いつ
    //何かにマッチ
それから
    // 何かをする
終わり

私は次のようなものが欲しいです:

グローバル文字列 timeDuration;

ルール「私のルール名」
持続時間Duration
いつ
    //何かにマッチ
それから
    // 何かをする
終わり

私は試しました: - 単体テストから長いグローバル変数セットを配置する - 「15s」を含む単体テストから文字列グローバル変数セットを配置する - 静的フィールドを含むクラスをインポートして配置する

my.temp.package.RemoveThisUglyClass をインポートします。
ルール「私のルール名」
持続時間 RemoveThisUglyClass.timeDuration
いつ
    //何かにマッチ
それから
    // 何かをする
終わり

どうやら仕方がないようです。AIでしょ?なにか提案を ?

ありがとう!

4

1 に答える 1

2

durationrule 属性はかなり長い間廃止されています。使用できますtimer

rule "tock"
timer( expr: $d )
when
    A($d: duration )
then
    //...
end

これは期間のミリ秒数の後に発生しますが、「3s」のような時間を含む文字列フィールドを使用することもできます。ドキュメントを参照してください。

于 2014-06-13T18:31:00.673 に答える