List 6-99 DataObj.SlipコンポーネントのGetRecord_Requestメソッド
  1: Public Sub GetRecord_Request(ByVal SlipID As Long, _
                                  ByRef REQ_CONSENTUSER As Variant, _
                                  ByRef REQ_CONSENTDATE As Variant, _
                                  ByRef REQ_CONSENTCOMMENT As Variant)
  2:     ' 伝票情報テーブル内の指定された伝票番号の伝票のうち
  3:     ' 承認依頼にかかわる情報を返す
  4:     ' 【引数】
  5:     '   SlipID = 情報を読み出したい伝票を特定する伝票番号を指定する
  6:     '   REQ_CONSENTUSER = 承認依頼を出したユーザーのアカウント名が格納される
  7:     '   REQ_CONSENTDATE = 承認依頼を出した日時が格納される
  8:     '   REQ_CONSENTCOMMENT = 承認依頼時に設定したコメントが格納される
  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:     REQ_CONSENTUSER = objRec.Fields("REQ_CONSENTUSER").Value
 30:     REQ_CONSENTDATE = objRec.Fields("REQ_CONSENTDATE").Value
 31:     REQ_CONSENTCOMMENT = objRec.Fields("REQ_CONSENTCOMMENT").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