List 6-64 DataObj.ProductコンポーネントのDeleteRecordメソッド
1: Public Sub DeleteRecord(ByVal ProductID As Long)
2: ' 製品情報テーブルから指定された製品のレコードを削除する
3: ' 【引数】
4: ' ProductID = 削除したい製品の製品番号
5: ' 【戻り値】
6: ' なし
7: Dim objContext As ObjectContext
8: Dim objConn As ADODB.Connection
9: Dim userName As String, NowDate As Date
10: Dim objHistory As DataObj.History
11:
12: ' オブジェクトコンテキストの取得
13: Set objContext = GetObjectContext()
14:
15: ' エラーハンドラの設定
16: On Error GoTo ErrHandle
17:
18: ' DataObj.Historyコンポーネントの実体化
19: Set objHistory = CreateObject("DataObj.History")
20:
21: ' ユーザー名と現在の時刻を取得
22: userName = objContext.Security.GetOriginalCallerName()
23: NowDate = Now()
24:
25: ' データベースと接続して,削除する
26: Set objConn = CreateObject("ADODB.Connection")
27: objConn.Open g_DBConnection
28: objConn.Execute "DELETE FROM 製品情報 WHERE ID=" & ProductID
29:
30: ' データベースとの接続を閉じる
31: objConn.Close
32: Set objConn = Nothing
33:
34: ' 履歴の追加
35: ' 本当にレコードが削除されたときには,履歴として-1という値を残すことにした
36: objHistory.AddHistory "製品情報", "DELETEDFLAG", ProductID, -1, -1
37: Set objHistory = Nothing
38:
39: ' コミットする
40: objContext.SetComplete
41:
42: ' オブジェクトコンテキストの解放
43: Set objContext = Nothing
44:
45: Exit Sub
46:
47: ErrHandle:
48: ' エラーハンドラ
49: objContext.SetAbort
50: Set objContext = Nothing
51: Set objConn = Nothing
52: Set objHistory = Nothing
53:
54: ' エラーの再発行
55: Err.Raise Err.Number, Err.Source, Err.Description, _
Err.HelpFile, Err.HelpContext
56: End Sub