You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

[ |../../index.htm#lansa/l4wdev04_0310.htm]
現在地:

バッチ制御の例

テーブル定義の一部として、バッチ制御ロジックを定義する例を紹介します。
例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

[ |../../index.htm#lansa/l4wdev04_0310.htm]

  • No labels