この方法は、伝票形式、集計表形式、フリーフレーム形式で使用できます。
ここでは、データがないレコードが含まれる可能性がある数値項目の合計を出力する方法を説明します。
帳票様式定義画面で、「数量」、「合計」を数字項目として定義します。
⇒「数量」の合計を「合計」に出力します。
帳票様式定義画面で、「数量」と同じ桁数の非出力項目(レコードのみ項目)(項目形式(レコード項目形式)は数字項目)として「数量カウンタ」を定義します。
帳票様式定義画面で、「合計」と同じ桁数の非出力項目(レコードのみ項目)(項目形式(レコード項目形式)は数字項目)として「合計カウンタ」を定義します。
帳票様式定義画面で、1桁の非出力項目(レコードのみ項目)(項目形式(レコード項目形式)は数字項目)として「フラグ」を定義します。
データ定義画面の[データ定義]タブで、「数量カウンタ」のオペランドに「CASE(数量 = _NULL_ , 0) DEFAULT(数量)」を指定します。
⇒入力データ内の「数量」にデータがない場合、「数量カウンタ」に「0」を代入し、データがある場合は、その値を代入します。
データ定義画面の[データ定義]タブで、「合計カウンタ」のオペランドに「SUM(数量カウンタ)」を指定します。
⇒「数量カウンタ」を使用し「数量」の合計を計算します。
データ定義画面の[データ定義]タブで、「フラグ」のオペランドに「CASE(フラグ = 1 , 1) CASE(数量 != _NULL_ , 1) DEFAULT(0)」を指定します。
⇒入力データ内の「数量」に1つでもデータがあれば、「フラグ」に「1」を代入します。
データ定義画面の[データ定義]タブで、「合計」のオペランドに「CASE(フラグ = 1 , 合計カウンタ) DEFAULT(_NULL_)」を指定します。
⇒入力データ内の「数量」に1つでもデータがあれば、「合計カウンタ」で計算した値を「合計」に代入し、なければ入力データがないことを示す「_NULL_」を代入します。
例)
データ項目名 | オペランド |
---|---|
数量カウンタ | CASE(数量 = _NULL_ , 0) DEFAULT(数量) |
数量 | |
合計カウンタ | SUM(数量カウンタ) |
フラグ | CASE(フラグ = 1 , 1) CASE(数量 != _NULL_ , 1) DEFAULT(0) |
合計 | CASE(フラグ = 1 , 合計カウンタ) DEFAULT(_NULL_) |
ポイント
集計表形式またはフリーフレーム場合、演算するタイミングを[拡張定義]タブでCOMPUTE文で指定してください。