この特集のトップページへ
>
Chapter 6:ビジネスロジックの設計
6.6.2 請求書の作成
●独立した請求書を作る
以上で,定期的に請求書を作る処理は実装した。次に,1つの伝票に対して1つの請求書を作成する処理を実装する。1つの伝票に対して1つの請求書を作成する場合,「請求書を作りたい伝票の伝票番号を指定し,それに関する1枚の請求書を作る」という処理が一般的だろう。そこで,Business.Billコンポーネントに次のようなMakeOneBillメソッドを実装する。
Public Function MakeOneBill(ByVal SlipID As Long) As Long
' 指定された伝票から請求書を作成する
' 【引数】
' SlipID = 請求書を作成したい伝票の伝票番号
' 【戻り値】
' 作成された請求書の請求書番号
End If
MakeOneBillメソッドは,引数に請求書を作りたい伝票の伝票番号を渡すと,請求書を作成し,作成した請求書の請求書番号(請求書情報テーブルのIDフィールドの値)を返す。ただし,経理処理ずみになっていない伝票が指定された場合には,エラー扱いとする。また,指定された伝票のONEBILLFLAGフィールドの値がFalseである場合にも,エラー扱いとする。
MakeOneBillメソッド内では,次の処理をすればよい。
- 1. 指定された伝票が経理処理ずみであることを確認する
- まず,引数SlipIDに指定された伝票が経理処理ずみであることを確認する。そのためには,List 6-106に示したDataObj.SlipコンポーネントのGet_SlipStatusメソッドを使えばよい。
- 2. 指定された伝票が1枚単位で請求書を作成するものであることを確認する
- 次に引数SlipIDに指定された伝票が1枚単位で請求書を作成するものであることを確認する。そのためには,List 6-98に示したDataObj.SlipコンポーネントのGetRecord_Billメソッドを使えばよい。
- 3. 請求書を作る
- 伝票から請求書を作る。これにはList 6-172に示したDataObj.BillコンポーネントのAddRecordメソッドを呼び出せばよい。
- 4. 伝票の状態を「請求書作成ずみ」にする
- 伝票の状態を「請求書作成ずみ」にするには,List 6-147に示したDataObj.SlipコンポーネントのSet_MADEBILLFLAGメソッドを呼び出せばよい。
- 5. 伝票と請求書を結び付ける
- 3. で作成した請求書と伝票とを結び付ける。そのためにはList 6-173で示したDataObj.SlipコンポーネントのSetBillIDメソッドを呼び出せばよい。
上記の5つの処理をするようにBusiness.BillコンポーネントにMakeOneBillメソッドを実装したものが,List 6-176である。
| Chapter 6 84/92 |
