2

私はJRulesを使用してビジネスルールを作成しています。以下の非常に単純な例に示すように、ルールにコメントを追加したいと思います。ルールのドキュメントセクションがあることはわかっていますが、それは私が必要としているものではありません

// comments needed here

definitions 
set 'an existing customer' to a customer
where the category of 'an existing customer' is "gold"

if 
the city of 'an existing customer' is "London"

then
give a 5% discount to 'an existing customer'

else
// and more comments needed here
give a 10% discount to 'an existing customer'

明らかに、通常のc ++とc#のdouble forwardslash //を使用しても上記の例では機能しないため、私の質問は、BALのルールにコメントをどのように追加するかです。

4

3 に答える 3

7

残念ながら、ルールにコメントを追加することはできません。言語化が適切であれば、ルールは自明であると考えられます。

ただし、各ルールのビジネス上の正当性を文書化する場合は、文書化機能を使用できます。

于 2012-02-27T12:45:41.813 に答える
3

簡単な回避策があります:

BOMに2つの静的仮想メソッドを作成できます。1つは条件にコメントし、もう1つはアクション用です。

条件の場合:

  • パラメータStringを受け取り、ブール値を返す静的メソッドを作成します
  • このように言語化する"//{0}"(引用符なし)
  • B2Xでは、trueを返すようにします
  • 次に、//"your_condition"と...で条件にコメントを付けることができます。

前の例では:

if 
the city of 'an existing customer' is "London" and
// "blablabla" and
the age of 'an existing customer' is greater than 18

then ...

メソッドはtrueを返すため、テストには影響しません。「or」ではなく「and」で囲む必要があります。

アクションの場合:

  • パラメータStringを受け取り、voidを返す静的メソッドを作成します
  • このように言語化する"//{0}"(引用符なし)
  • B2Xで、「return;」を追加します。
  • 次に、//"your_action";を使用してアクションにコメントを付けることができます。

前の例では:

else
// "and more comments needed here" ;
give a 10% discount to 'an existing customer' ;
于 2012-09-20T16:31:25.947 に答える
1

あなたはそれを行うことができますが、それは非常に多くのカスタマイズを意味します。だからそれを忘れてください
そしてそれはEclipseではなくブラウザインターフェースを介してのみ実現可能です。
あなたがだましているという理由だけで。

方法:
準備はできていますか?...安定していますか?...
独自のRTS(チームサーバー)Webインターフェイスを再作成する必要があります!大変な努力のように思われる場合は、読むのをやめてください:)
APIを使用して、RTS(データベース)からルールを取得できます(Titoの回答に記載されているように)任意のルールに添付されたドキュメントがあります。
したがって、ルールの表示を処理し、それに応じてコメントを追加できます。
もちろん、コメントをルールに正しく配置する方法を見つける必要があります
。行番号でうまくいく可能性があります。
これはディスプレイ用です...
ルールを保存するとき(実際の保存を行うためにコーディングした素敵なボタンをクリックして)、コメントを削除し(そして、次にルールを表示するときにそれらがどこにあるかを知る)、両方を保存する必要があります。ルール本体と添付のドキュメント。

クレイジーに聞こえますか?1人のクライアントがそれを行い、私はこれに取り組んでいました:)しかし、ルール本体は変更しませんでした。ルール本体以外のほとんどすべて。

これには、それに取り組んでいる人の数とは関係なく、数か月かかるでしょう。

要約すると、あなたはそれを行うことができますか、はい!
実装は努力する価値がありますか?ありえない!!!

この機能は次のバージョンで利用できますか?いいえ!ティトが述べたように、ルールは自明であるべきです。

ごめん :(

于 2012-04-18T12:32:24.023 に答える