List 6-10 Business.CustomerコンポーネントのAddCustomerメソッドにおいて,ロールの判定を無効に変更したところ(赤色部分がコメントアウトした箇所)
1: Public Function AddCustomer(ByVal NAME As Variant, _
ByVal YOMIGANA As Variant, _
ByVal ZIP As Variant, _
ByVal ADDRESS As Variant, _
ByVal TELEPHONE As Variant, _
ByVal FAX As Variant, _
ByVal MEMO As Variant) As Long
2: ' 新しい顧客を登録する
3: ' 【引数】
4: ' CUSTOMERNAME = 顧客名,YOMIGANA = 顧客名のよみがな
5: ' ZIP = 郵便番号, ADDRESS = 住所
6: ' TELEPHONE = 電話番号, FAX = FAX番号
7: ' MEMO = 摘要
8: ' 【戻り値】
9: ' 登録した顧客の顧客番号(顧客情報テーブルのIDフィールドの値)
10: Dim objContext As ObjectContext
11: Dim objDataCustomer As DataObj.Customer
12:
13: ' オブジェクトコンテキストの取得
14: Set objContext = GetObjectContext()
15:
16: ' エラーハンドラの設定
17: On Error GoTo ErrHandle
18:
19: ' セキュリティの権限があるかどうかを調べる
20: 'If Not objContext.IsSecurityEnabled() Then
21: ' セキュリティ機能が有効ではない
22: ' Err.Raise Err_NOSECURE, App.Title, "セキュリティ機能が無効です"
23: 'End If
24:
25: 'If Not objContext.IsCallerInRole("Sales") Then
26: ' Salesロールに属していない
27: ' Err.Raise Err_CANTACCESS, App.Title, "操作する権限がありません"
28: 'End If
29:
30: ' DataObj.Customerコンポーネントの実体化
31: Set objDataCustomer = CreateObject("DataObj.Customer")
32:
33: ' AddRecordメソッドを呼び出して登録
34: AddCustomer = objDataCustomer.AddRecord(NAME, YOMIGANA, _
ZIP, ADDRESS, _
TELEPHONE, FAX, MEMO)
35:
36: ' DataObj.Customerの解放
37: Set objDataCustomer = Nothing
38:
39: ' コミットする
40: objContext.SetComplete
41:
42: ' オブジェクトコンテキストの解放
43: Set objContext = Nothing
44:
45: Exit Function
46:
47: ErrHandle:
48: ' エラーハンドラ
49: objContext.SetAbort
50: Set objContext = Nothing
51: Set objDataCustomer = Nothing
52:
53: ' エラーの再発行
54: Err.Raise Err.Number, Err.Source, Err.Description, Err.HelpFile, Err.HelpContext
55: End Function