List 6-101 DataObj.SlipコンポーネントのGetRecord_Rejectedメソッド
  1: Public Sub GetRecord_Rejected(ByVal SlipID As Long, _
                                   ByRef REJECTEDUSER As Variant, _
                                   ByRef REJECTEDDATE As Variant, _
                                   ByRef REJECTEDCOMMENT As Variant)
  2:     ' 伝票情報テーブル内の指定された伝票番号の伝票のうち
  3:     ' 却下処理にかかわる情報を返す
  4:     ' 【引数】
  5:     '   SlipID = 情報を読み出したい伝票を特定する伝票番号を指定する
  6:     '   REJECTEDUSER = 却下処理をしたユーザーのアカウント名が格納される
  7:     '   REJECTEDDATE = 却下処理された日時が格納される
  8:     '   REJECTEDCOMMENT = 却下処理されたときのコメントが格納される
  9:     ' 【戻り値】
 10:     '   なし
 11:     Dim objContext As ObjectContext
 12:     Dim objRec As ADODB.Recordset
 13:     
 14:     ' オブジェクトコンテキストの取得
 15:     Set objContext = GetObjectContext()
 16:     
 17:     ' エラーハンドラの設定
 18:     On Error GoTo ErrHandle
 19:     
 20:     ' 指定された伝票番号の伝票情報を取得
 21:     Set objRec = CreateObject("ADODB.Recordset")
 22:     objRec.Open "SELECT * FROM 伝票情報 WHERE ID=" & SlipID, _
                      g_DBConnection, adOpenForwardOnly, adLockReadOnly, adCmdText
 23:     
 24:     If objRec.EOF Then
 25:         Err.Raise Errorcode.Err_NOTFOUND, App.Title, _
                       "指定された伝票番号を持つ伝票が見つかりません"
 26:     End If
 27:     
 28:     ' 取得したデータを渡された引数に設定
 29:     REJECTEDUSER = objRec.Fields("REJECTEDUSER").Value
 30:     REJECTEDDATE = objRec.Fields("REJECTEDDATE").Value
 31:     REJECTEDCOMMENT = objRec.Fields("REJECTEDCOMMENT").Value
 32:     
 33:     ' データベースとの接続を閉じてレコードセットを解放
 34:     objRec.Close
 35:     Set objRec = Nothing
 36:     
 37:     ' トランザクションをコミット
 38:     objContext.SetComplete
 39:     
 40:     ' オブジェクトコンテキストの解放
 41:     Set objContext = Nothing
 42:     
 43:     Exit Sub
 44:     
 45: ErrHandle:
 46:     ' エラーハンドラ
 47:     objContext.SetAbort
 48: 
 49:     Set objContext = Nothing
 50:     Set objRec = Nothing
 51:     
 52:     ' エラーの再発行
 53:     Err.Raise Err.NUMBER, Err.Source, Err.Description, _
                   Err.HelpFile, Err.HelpContext
 54: End Sub