List 6-160 DataObj.StockコンポーネントのGetRecordsBySlipIDメソッド
  1: Public Function GetRecordsBySlipID(ByVal SlipID As Long) As ADODB.Recordset
  2:     ' 指定された伝票番号を持つ伝票から作られた
  3:     ' 在庫情報テーブル中の出庫を示すレコードをADODB.Recordsetオブジェクト
  4:     ' として返す
  5:     ' 【引数】
  6:     '   SlipID = 伝票の伝票番号
  7:     ' 【戻り値】
  8:     '   指定された伝票番号から作られた出庫予定のレコードをすべて含む
  9:     '   読み取り専用の閉じたADODB.Recordsetオブジェクト
 10:     Dim objContext As ObjectContext
 11:     Dim objRec As ADODB.Recordset
 12:     
 13:     ' オブジェクトコンテキストの取得
 14:     Set objContext = GetObjectContext()
 15:     
 16:     ' エラーハンドラの設定
 17:     On Error GoTo ErrHandle
 18:     
 19:     ' データベースと接続し,SELECT文を発行する
 20:     Set objRec = CreateObject("ADODB.Recordset")
 21:     ' カーソルロケーションをクライアントカーソルに設定する
 22:     objRec.CursorLocation = adUseClient
 23:     
 24:     ' SELECT文の実行
 25:     objRec.Open "SELECT * FROM 在庫情報 WHERE SLIPID = " & SlipID, _
                     g_DBConnection, adOpenStatic, adLockReadOnly, adCmdText
 26:                 
 27:     ' データベースコネクションを切除
 28:     Set objRec.ActiveConnection = Nothing
 29:     
 30:     ' 取得したレコードセットを戻り値とする
 31:     Set GetRecordsBySlipID = objRec
 32:     Set objRec = Nothing
 33:     
 34:     ' トランザクションのコミット
 35:     objContext.SetComplete
 36:     
 37:     ' オブジェクトコンテキストの解放
 38:     Set objContext = Nothing
 39:     
 40:     Exit Function
 41: 
 42: ErrHandle:
 43:     ' エラーハンドラ
 44:     objContext.SetAbort
 45:     
 46:     Set objContext = Nothing
 47:     Set objRec = Nothing
 48:     
 49:     ' エラーの再発行
 50:     Err.Raise Err.Number, Err.Source, Err.Description, _
                   Err.HelpFile, Err.HelpContext
 51: End Function