List 6-60 Business.ProductコンポーネントのUpdateProductメソッド
  1: Public Sub UpdateProduct(ByVal ProductID As Long, _
                              ByVal ProductNAME As Variant, ByVal YOMIGANA As Variant, _
                              ByVal PRICE As Variant, ByVal MEMO As Variant)
  2:     ' 製品情報テーブル内の指定された製品番号の製品情報を変更する
  3:     ' 【引数】
  4:     '   ProductID = 変更したい製品を特定する製品番号を指定する
  5:     '   PRODUCTNAME = 設定する製品名を指定する
  6:     '   YOMIGANA = 設定する製品名よみがなを指定する
  7:     '   PRICE = 設定する製品の価格を指定する
  8:     '   MEMO = 設定する製品の摘要を指定する
  9:     ' 【戻り値】
 10:     '   なし
 11:     Dim objContext As ObjectContext
 12:     Dim objDataProduct As DataObj.Product
 13:     
 14:     ' オブジェクトコンテキストの取得
 15:     Set objContext = GetObjectContext()
 16:     
 17:     ' エラーハンドラの設定
 18:     On Error GoTo ErrHandle
 19:     
 20:     ' DataObj.Productコンポーネントの実体化
 21:     Set objDataProduct = CreateObject("DataObj.Product")
 22:     
 23:     ' 対象となる製品が削除ずみでないかどうかの確認
 24:     If objDataProduct.IsDeleted(ProductID) <> ID_Exists Then
 25:         ' 削除ずみもしくは存在しない
 26:         Err.Raise Errorcode.Err_NotFound, App.Title, _
                       "指定された製品番号を持つ製品は見つかりません"
 27:     End If
 28:     
 29:     ' 製品情報の設定
 30:     objDataProduct.UpdateRecord ProductID, ProductNAME, _
                                     YOMIGANA, PRICE, MEMO
 31:     
 32:     ' DataObj.Productの解放
 33:     Set objDataProduct = Nothing
 34:     
 35:     ' コミットする
 36:     objContext.SetComplete
 37:     
 38:     ' オブジェクトコンテキストの解放
 39:     Set objContext = Nothing
 40:     
 41:     Exit Sub
 42: 
 43: ErrHandle:
 44:     ' エラーハンドラ
 45:     objContext.SetAbort
 46:     Set objContext = Nothing
 47:     Set objDataProduct = Nothing
 48:     
 49:     ' エラーの再発行
 50:     Err.Raise Err.Number, Err.Source, Err.Description, _
                   Err.HelpFile, Err.HelpContext
 51: End Sub