List 6-109 DataObj.SlipInformationコンポーネントのGetRecordsメソッド
  1: Public Function GetRecords(ByVal SlipID As Long) As ADODB.Recordset
  2:     ' 指定された伝票番号に結び付けられている
  3:     ' 伝票追加情報テーブル中のレコードの一覧(履歴)を
  4:     ' ADODB.Recordsetオブジェクトとして返す
  5:     ' 【引数】
  6:     '   SlipID = 伝票を特定する伝票番号
  7:     ' 【戻り値】
  8:     '   指定された伝票番号に結び付けられた伝票追加情報テーブル中の
  9:     '   レコードを含むADODB.Recordsetオブジェクト
 10:     '   戻り値となるADODB.Recordsetオブジェクトは読み取り専用の閉じたレコードセット
 11:     Dim objContext As ObjectContext
 12:     Dim objRec As ADODB.Recordset
 13:     Dim strQuery As String
 14:     
 15:     ' オブジェクトコンテキストの取得
 16:     Set objContext = GetObjectContext()
 17:     
 18:     ' エラーハンドラの設定
 19:     On Error GoTo ErrHandle
 20:     
 21:     ' 発行するSELECT文を設定
 22:     strQuery = "SELECT ID, SLIPID, DIVISION, PERSON, DELIVERDATE, SENT_ADDR, SENT_TEL," & _
                    " MEMO, MADEDATE, MADEUSER, LASTDATE, LASTUSER, DELETEDFLAG" & _
                    " FROM 伝票追加情報 WHERE SLIPID=" & SlipID & _
                    " ORDER BY MADEDATE"
 23:     
 24:     ' データベースと接続し,SELECT文を発行
 25:     Set objRec = CreateObject("ADODB.Recordset")
 26:     ' カーソルロケーションをクライアントカーソルに設定
 27:     objRec.CursorLocation = adUseClient
 28:     
 29:     ' SELECT文の実行
 30:     objRec.Open strQuery, g_DBConnection, adOpenStatic, adLockReadOnly, adCmdText
 31:     
 32:     ' データベースコネクションを切除
 33:     Set objRec.ActiveConnection = Nothing
 34:     
 35:     ' 取得したレコードセットを戻り値とする
 36:     Set GetRecords = objRec
 37:     Set objRec = Nothing
 38:     
 39:     ' トランザクションをコミット
 40:     objContext.SetComplete
 41:     
 42:     ' オブジェクトコンテキストの解放
 43:     Set objContext = Nothing
 44:     
 45:     Exit Function
 46: ErrHandle:
 47:     ' エラーハンドラ
 48:     objContext.SetAbort
 49:     
 50:     Set objContext = Nothing
 51:     Set objRec = Nothing
 52:     
 53:     ' エラーの再発行
 54:     Err.Raise Err.NUMBER, Err.Source, Err.Description, _
                   Err.HelpFile, Err.HelpContext
 55: End Function