0

テーブルには dayType と total という名前の 2 つの列があり、total 列には既に値があり、同じ dayType を持つレコードのみを合計したいと考えています。

これをコーディングしました

 if{EB_Tam_DailyMv.dmv_daytype}= "R" then 
 sum({EB_Tam_DailyMv.dmv_totalot})

 else if {EB_Tam_DailyMv.dmv_daytype} = "P" then 
 sum ({EB_Tam_DailyMv.dmv_totalot})

R日の合計を出力することを想定していますが、機能しないか、私のロジックが正しくありません...

助けてくれてありがとう

4

1 に答える 1

1

日が「R」タイプの場合、同じフィールド {EB_Tam_DailyMv.dmv_totalot} を追加しています。両方の日が「P」タイプであるため、「合計」式のクリスタル レポートを使用する場合は、日の種類に関係なく報告します。

すべての「P」日の合計と「R」日の合計を別々に作成する場合は、次のように 2 つの異なる式を作成する必要があります。

式 1: SumOfP

if uppercase({EB_Tam_DailyMv.dmv_daytype}) = "P" then 
{EB_Tam_DailyMv.dmv_totalot} else 0

式 2: SumOfR

if uppercase({EB_Tam_DailyMv.dmv_daytype}) = "R" then 
{EB_Tam_DailyMv.dmv_totalot} else 0

それらをレポートに入れ(必要に応じて非表示にすることができます)、2つの「累計フィールド」を作成します。1つはSumOfP式を合計し、もう1つはSumOfR式を合計します。

于 2015-06-09T07:02:22.997 に答える