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