List 7-67 FormProductフォームのForm_Loadプロシージャ
1: Private g_uRole As Business.USERROLE
2:
3: Private Sub Form_Load()
4: ' フォームがロードされたときの処理
5: Dim objUtility As Business.Utility
6: Dim enableFlag As Boolean
7:
8: ' ユーザーの権限によって,一部のボタンを不可視にする
9: On Error GoTo ErrHandle
10:
11: Set objUtility = CreateObject("Business.Utility")
12:
13: ' ユーザーのロールを取得する
14: g_uRole = objUtility.GetUserInRole()
15:
16: If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTS Or ROLE_PRODUCTSADMIN) Then
17: ' 編集権限を持っている
18: enableFlag = True
19: Else
20: ' 編集権限がない
21: enableFlag = False
22: End If
23:
24: BTN_NEW.Visible = enableFlag
25: BTN_DELETE.Visible = enableFlag
26:
27: ' 編集ボタンを詳細というラベルに変更するかどうか
28: BTN_EDIT.Visible = True
29: If enableFlag Then
30: BTN_EDIT.Caption = "編集"
31: Else
32: BTN_EDIT.Caption = "詳細"
33: End If
34:
35: If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTSADMIN) Then
36: ' 復活権限を持っている
37: enableFlag = True
38: Else
39: ' 復活権限を持っていない
40: enableFlag = False
41: End If
42:
43: BTN_UNDELETE.Visible = enableFlag
44:
45: Set objUtility = Nothing
46:
47: ' データグリッドの中身を最新の情報に更新する
48: ' 最初は顧客番号順に並べる
49: g_Order = "ID"
50: RefreshData
51:
52: ' ComboBoxにDataGridコントロール内のカラム名を移す
53: SetFieldList
54:
55: Exit Sub
56:
57: ErrHandle:
58: ' エラーが発生した
59: MsgBox Err.Description, vbOKOnly, "顧客情報の環境設定エラー"
60: Set objUtility = Nothing
61: End Sub