List 6-137 DataObj.SlipコンポーネントのDeleteRecordメソッド
1: Public Sub DeleteRecord(ByVal SlipID As Long)
2: ' 指定された伝票のレコードを削除する
3: ' 【引数】
4: ' SlipID = 削除したい伝票の伝票番号
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=" & SlipID
29:
30: ' データベースとの接続を遮断
31: objConn.Close
32: Set objConn = Nothing
33:
34: ' 履歴の追加
35: ' 本当にレコードが削除されたときには,履歴として-1という値を残すことにした
36: objHistory.AddHistory "伝票情報", "DELETEDFLAG", SlipID, -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