List 7-119 FormSlipフォームの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_SALES Or ROLE_SALESMANAGER Or ROLE_SALESADMIN) Then
17: ' 営業部に属する
18: enableFlag = True
19: Else
20: ' 営業部に属さない
21: ' 伝票の作成操作などが不可
22: ' 承認依頼,承認依頼取り消しも不可
23: enableFlag = False
24: End If
25:
26: BTN_NEW.Visible = enableFlag
27: BTN_DELETE.Visible = enableFlag
28: BTN_REQUESTCONSENT.Visible = enableFlag
29: BTN_CANCELREQUESTCONSENT.Visible = enableFlag
30: BTN_CANCELCONSENT.Visible = enableFlag
31:
32: If enableFlag Then
33: BTN_EDIT.Caption = "編集"
34: Else
35: BTN_EDIT.Caption = "詳細"
36: End If
37:
38: If g_uRole And (ROLE_ALLADMIN Or ROLE_SALESMANAGER Or ROLE_SALESADMIN) Then
39: ' 営業部上長に属する
40: enableFlag = True
41: Else
42: ' 営業部上長に属さない
43: ' 伝票の承認操作が不可
44: enableFlag = False
45: End If
46:
47: BTN_CONSENT.Visible = enableFlag
48: BTN_REJECT.Visible = enableFlag
49: BTN_CANCELREJECT.Visible = enableFlag
50:
51: If g_uRole And (ROLE_ALLADMIN Or ROLE_SALESADMIN) Then
52: ' 営業部管理者に属する
53: enableFlag = True
54: Else
55: ' 営業部管理者に属さない
56: ' 伝票の復帰操作が不可
57: enableFlag = False
58: End If
59:
60: BTN_UNDELETE.Visible = enableFlag
61:
62: If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTS Or ROLE_PRODUCTSADMIN) Then
63: ' 製品管理部に属する
64: enableFlag = True
65: Else
66: ' 製品管理部に属さない
67: ' 発送処理が不可
68: enableFlag = False
69: End If
70:
71: BTN_SEND.Visible = enableFlag
72:
73: If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTSADMIN) Then
74: ' 製品管理部管理者に属する
75: enableFlag = True
76: Else
77: ' 製品管理部管理者に属さない
78: ' 伝票の発送取り消しが不可
79: enableFlag = False
80: End If
81:
82: BTN_CANCELSEND.Visible = enableFlag
83:
84: If g_uRole And (ROLE_ALLADMIN Or ROLE_ACCOUNTING Or ROLE_ACCOUNTINGADMIN) Then
85: ' 経理部に属する
86: enableFlag = True
87: Else
88: ' 経理部に属さない
89: ' 経理処理が不可
90: enableFlag = False
91: End If
92:
93: BTN_ACCOUNTING.Visible = enableFlag
94: BTN_MAKEONEBILL.Visible = enableFlag
95:
96: If g_uRole And (ROLE_ALLADMIN Or ROLE_ACCOUNTINGADMIN) Then
97: ' 経理部管理者に属する
98: enableFlag = True
99: Else
100: ' 経理部管理者に属さない
101: ' 経理処理の取り消しが不可
102: enableFlag = False
103: End If
104:
105: BTN_CANCELACCOUNTING.Visible = enableFlag
106:
107: Set objUtility = Nothing
108:
109: ' データグリッドの中身を最新の情報に更新する
110: ' 最初はID順に並べる
111: g_Order = "ID"
112: ' 最初はフィルタ項目はナシとする
113: g_startMADEDATE = Null
114: g_endMADEDATE = Null
115: g_startDELIVERDATE = Null
116: g_endDELIVERDATE = Null
117: g_IncludeOtherMade = True
118: g_filterSlip = FILTER_SLIP_ALL
119: g_includedeleted = True
120: g_CUSTOMERID = -1
121:
122: RefreshData
123:
124: ' ComboboxにDataGridコントロールのカラム名を移す
125: SetFieldList
126:
127: Exit Sub
128:
129: ErrHandle:
130: ' エラーが発生した
131: MsgBox Err.Description, vbOKOnly, "伝票情報の環境設定エラー"
132: Set objUtility = Nothing
133: End Sub