List 6-131 Business.SlipコンポーネントのGetSlipDetailsメソッド
1: Public Function GetSlipDetails(ByVal SlipID As Long) As ADODB.Recordset
2: ' 指定された伝票に付随する明細レコードをすべて返す
3: ' 【引数】
4: ' SlipID = 明細を取得したい伝票の伝票番号
5: ' 【戻り値】
6: ' 伝票に結び付けられたすべての明細が含まれたADODB.Recordsetオブジェクト
7: Dim objContext As ObjectContext
8: Dim objDataSlip As DataObj.Slip, objDataSlipDetail As DataObj.SlipDetail
9: Dim SlipStatus As DataObj.SlipStatus
10: Dim IsDeleted As DataObj.DELETEDFLAG
11:
12: ' オブジェクトコンテキストの取得
13: Set objContext = GetObjectContext()
14:
15: ' エラーハンドラの設定
16: On Error GoTo ErrHandle
17:
18: ' DataObj.Slipコンポーネントの実体化
19: Set objDataSlip = CreateObject("DataObj.Slip")
20:
21: ' 削除されているかどうかを取得
22: IsDeleted = objDataSlip.IsDeleted(SlipID)
23:
24: ' 伝票の状態を取得
25: SlipStatus = objDataSlip.Get_SlipStatus(SlipID)
26:
27: ' 参照権限があるかどうか
28: Chk_View objContext, IsDeleted, SlipStatus
29:
30: ' DataObj.SlipDetailコンポーネントの実体化
31: Set objDataSlipDetail = CreateObject("DataObj.SlipDetail")
32:
33: ' 明細を取得し,戻り値とする
34: Set GetSlipDetails = objDataSlipDetail.GetRecords(SlipID)
35:
36: ' DataObj.SlipDetailコンポーネントの解放
37: Set objDataSlipDetail = Nothing
38:
39: ' DataObj.Slipコンポーネントの解放
40: Set objDataSlip = Nothing
41:
42: ' トランザクションをコミット
43: objContext.SetComplete
44:
45: ' オブジェクトコンテキストの解放
46: Set objContext = Nothing
47:
48: Exit Function
49:
50: ErrHandle:
51: ' エラーハンドラ
52: objContext.SetAbort
53: Set objContext = Nothing
54: Set objDataSlip = Nothing
55:
56: ' エラーの再発行
57: Err.Raise Err.NUMBER, Err.Source, Err.Description, _
Err.HelpFile, Err.HelpContext
58: End Function