2012-04-26 13 views
1

グループの下に見つかったレコードの総数を数えたいので、それに応じて削減率を割り当てる必要があります。詳細に

クリスタルレポートのグループレコードを数える他の方法はありますか?

  • ユーザは、ユーザが4-10の製品を得た場合、彼は10-20を得た場合、彼が15%
  • を得るでしょう10%
  • を得るでしょ未満3つの製品を得た場合製品には、彼が

例えば水晶レポートとして以下の点を考慮控除として20%を取得するでしょう:

ユーザーを1
製品           控除
アップル                        15%
オレンジ                  15%
レモン                    15%ここで
ストロベリー        15%
ブドウ                  15%

私はこの内のレコードの数を作りましたグループを実行中の合計とworteを使用して数式。カウントに依存して、控除を行います
しかし、取得することの問題は、私は次の出力を取得しています...

ユーザー1
製品           控除
アップル                        10%    // カウントがあるので、1
オレンジ                  10%    // カウントが3
あるのでカウントが2
レモン                    10%    // あるのでイチゴ    // カウントが4つの
ブドウ                  15%    // あるので、カウントが5

あるので0     15%が、私は15のように、すべての製品の控除を行いたいですレコードの総数が4-15の場合は%。ここでは、製品の総数は4-15の範囲で5であるため、すべての製品で15%の控除が必要です。
これを解決するために私を助けてください?

答えて

6

単純なカウントには実行中のフィールド(RT)は必要ありません。代わりにサマリーフィールドを使用してください。集計フィールドは、グループのヘッダーとフッターで使用できます(RTはフッターでのみ使用できます)。

フィールド(できれば一意のフィールド)を選択し、[挿入|要約フィールド...ピックリストからカウントまたは個別カウントを選択します。

あなたは計算式にも、この概要を使用することができます。

//{@discount} 
//Assumes there is a group on {table.fruit_name}): 
SELECT Count({table.key_field}, {table.fruit_name}) 
CASE 1 to 3: .1 
CASE 4 to 5: .15 
DEFAULT: 0 
+0

これはあなたのために働いた場合は答えとして、質問をマークしてください。ありがとう。 – craig

+0

Thxたくさん!それは非常にうまく動作し、私もそれを理解し、これは正しい答えです...私はこのレポートで疑問を抱いています:( –

+0

私は総額から控除%を差し引いた後に生成された式 "final_amt"私はfinal_amtをすべての果実につけるのですが、最終的な数を合計するには、数式をまとめることができるので、合計する方法はありますか? –

関連する問題