テーブル定義の一部として、バッチ制御ロジックを定義する例を紹介します。

例1

この節の最初にも紹介した取引データ入力システムで、次の3つのテーブルがあるとします。

テーブル名:


DAYTOT

BCHTOT

ENTDTA

説明:


日次集計

バッチ集計

入力データ

列:


DATE
DDEBIT
DCREDIT

DATE    
BATCH
BDEBIT
BCREDIT

DATE
BATCH
TRANSACTION
ACCOUNT
DESCRIPTION
DEBIT  
CREDIT

プライマリ・キー 

1

DATE

DATE

DATE


2


BATCH

BATCH


3



TRANSACTION

 
ここでBDEBIT(バッチ借方合計)およびBCREDIT(バッチ貸方合計)は、あるDATE(日付)、BATCH(バッチ処理単位番号)のDEBIT(借方)およびCREDIT(貸方)の合計値を表します。同様に、DDEBIT(日次借方)およびDCREDIT(日次貸方)は、あるDATE(日付)のDEBIT(借方)およびCREDIT(貸方)の合計値です。

バッチ制御による集計処理を組み込むためには、次のバッチ制御ロジックを、テーブルENTDTA(入力データ)の定義に追加する必要があります。

定義名

バッチ制御テーブル名

集計の対象となる列

バッチ制御テーブルのうち、集計値を格納する列

集計の対象レコードを選択するためのキー

ENTDTA


BCHTOT


DEBIT

BDEBIT

DATE

CREDIT

BCREDIT

BATCH

ENTDTA


DAYTOT


DEBIT

DDEBIT

DATE

CREDIT

DCREDIT


例2

次の例は、注文の「頭書き」テーブルと「明細行」テーブルから成るアプリケーションです。

テーブル名:


ORDHDR

ORDLIN

説明:


注文の頭書き

注文の明細行

列:


ORDNUM
CUSTNO
DATE
TOTDUE

ORDNUM
ORDLIN
PRODNO
QUANTY
VALUE

プライマリ・キー 

1

ORDNUM

ORDNUM


2


ORDLIN


3



「頭書き」テーブルのTOTDUE(合計)は、「明細行」テーブルの、該当するレコードのVALUE(金額)を集計して求めます。すなわち、TOTDUEは関連する請求書明細行の合計です。

バッチ制御による集計処理を組み込むためには、次のバッチ制御ロジックを、テーブルORDLIN(明細行)の定義に追加する必要があります。

テーブル定義名:

ORDLIN

バッチ制御テーブル名:

ORDHDR

集計の対象となる列:

VALUE

バッチ制御テーブルのうち、集計値を格納する列:

TOTDUE

集計の対象レコードを選択するためのキー:

ORDNUM

  • No labels