この特集のトップページへ
>
Chapter 6:ビジネスロジックの設計
6.5.4 発送処理
●発送を取り消す
発送ずみにした伝票を発送前の状態(つまり「承認ずみ」)に戻したい場合には,List 6-165で示したSendSlipメソッドと逆の処理をすることになる。つまり,次の4つの処理の組み合わせを実施する。
伝票のSENDFLAGフィールドの値をFalseにし,CONSENTEDFLAGフィールドの値をTrueに設定する
在庫情報テーブルに登録された出庫予定レコードを施行ずみから施行まえに戻す
在庫の数を増やす
予約数を増やす
実際にこれらの4つの処理をするプログラムをBusiness.SlipコンポーネントにCancelSendSlipという名前のメソッドとして実装したものが,List 6-166である。List 6-166では,46〜57行目にあるように,メソッドを呼び出したユーザーが,(1)発送ずみにしたユーザーと一致する,(2)ProductsAdminロールまたはAllAdminロールに属する,といういずれかの条件を満たさなかった場合にはエラーとする処理にした。
Chapter 6 76/92 |