この特集のトップページへ
Chapter 6:ビジネスロジックの設計



6.5.4 発送処理
●発送を取り消す
 発送ずみにした伝票を発送前の状態(つまり「承認ずみ」)に戻したい場合には,List 6-165で示したSendSlipメソッドと逆の処理をすることになる。つまり,次の4つの処理の組み合わせを実施する。

  1. 伝票のSENDFLAGフィールドの値をFalseにし,CONSENTEDFLAGフィールドの値をTrueに設定する

  2. 在庫情報テーブルに登録された出庫予定レコードを施行ずみから施行まえに戻す

  3. 在庫の数を増やす

  4. 予約数を増やす

 実際にこれらの4つの処理をするプログラムをBusiness.SlipコンポーネントにCancelSendSlipという名前のメソッドとして実装したものが,List 6-166である。List 6-166では,46〜57行目にあるように,メソッドを呼び出したユーザーが,(1)発送ずみにしたユーザーと一致する,(2)ProductsAdminロールまたはAllAdminロールに属する,といういずれかの条件を満たさなかった場合にはエラーとする処理にした。

prevpg.gif Chapter 6 76/92 nextpg.gif