$PBExportHeader$w_aifmb_user_manage.srw forward global type w_aifmb_user_manage from window end type type cb_1 from uo_imflatbutton within w_aifmb_user_manage end type type dw_2 from u_dw_rbtnfilter within w_aifmb_user_manage end type type cb_del from uo_imflatbutton within w_aifmb_user_manage end type type cb_edit from uo_imflatbutton within w_aifmb_user_manage end type type cb_add from uo_imflatbutton within w_aifmb_user_manage end type type cb_refresh from uo_imflatbutton within w_aifmb_user_manage end type type dw_1 from u_dw_rbtnfilter within w_aifmb_user_manage end type type cb_exit from uo_imflatbutton within w_aifmb_user_manage end type type r_bar from rectangle within w_aifmb_user_manage end type type ln_bar from line within w_aifmb_user_manage end type type ln_bar2 from line within w_aifmb_user_manage end type end forward global type w_aifmb_user_manage from window integer width = 3310 integer height = 1980 boolean titlebar = true string title = "用户管理" windowtype windowtype = child! long backcolor = 67108864 string icon = "AppIcon!" boolean center = true event ue_refresh ( ) cb_1 cb_1 dw_2 dw_2 cb_del cb_del cb_edit cb_edit cb_add cb_add cb_refresh cb_refresh dw_1 dw_1 cb_exit cb_exit r_bar r_bar ln_bar ln_bar ln_bar2 ln_bar2 end type global w_aifmb_user_manage w_aifmb_user_manage type variables end variables event ue_refresh();DataStore ds_entuser ds_entuser = Create DataStore uo_aifmb = Create uo_aifmb Int rslt = 1 String arg_msg IF uo_aifmb.uf_getentuserlist(ds_entuser, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF dw_1.Reset() ds_entuser.RowsCopy(1, ds_entuser.RowCount(), Primary!, dw_1, 1, Primary!) Long row row = dw_1.GetRow() IF row > 0 THEN dw_1.Trigger Event RowFocusChanged(row) END IF ext: Destroy ds_entuser Destroy uo_aifmb IF rslt = 0 THEN MessageBox('ERROR', arg_msg) END IF end event on w_aifmb_user_manage.create this.cb_1=create cb_1 this.dw_2=create dw_2 this.cb_del=create cb_del this.cb_edit=create cb_edit this.cb_add=create cb_add this.cb_refresh=create cb_refresh this.dw_1=create dw_1 this.cb_exit=create cb_exit this.r_bar=create r_bar this.ln_bar=create ln_bar this.ln_bar2=create ln_bar2 this.Control[]={this.cb_1,& this.dw_2,& this.cb_del,& this.cb_edit,& this.cb_add,& this.cb_refresh,& this.dw_1,& this.cb_exit,& this.r_bar,& this.ln_bar,& this.ln_bar2} end on on w_aifmb_user_manage.destroy destroy(this.cb_1) destroy(this.dw_2) destroy(this.cb_del) destroy(this.cb_edit) destroy(this.cb_add) destroy(this.cb_refresh) destroy(this.dw_1) destroy(this.cb_exit) destroy(this.r_bar) destroy(this.ln_bar) destroy(this.ln_bar2) end on event open;datastore ds_rights uo_aifmb = Create uo_aifmb ds_rights = Create datastore Int rslt = 1 String arg_msg IF uo_aifmb.uf_getuserrightlist(ds_rights, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF ds_rights.RowsCopy(1, ds_rights.RowCount(), Primary!, dw_2, 1, Primary!) triggerevent('ue_refresh') ext: Destroy uo_aifmb Destroy ds_rights IF rslt <> 1 THEN MessageBox('ERROR', arg_msg) END IF end event event resize;ln_bar.EndX = THIS.Width ln_bar2.EndX = THIS.Width r_bar.Width = THIS.Width dw_1.Height = this.WorkSpaceHeight() - dw_1.Y dw_2.Height = this.WorkSpaceHeight() - dw_2.Y dw_1.Width = this.WOrkSpaceWidth() - dw_1.X - dw_2.Width dw_2.X = dw_1.X + dw_1.Width end event type cb_1 from uo_imflatbutton within w_aifmb_user_manage integer x = 603 integer width = 329 integer height = 164 integer taborder = 20 string text = "绑定操作员" string normalpicname = "update2.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_logname String ls_logpsw Long ll_row ll_row = dw_1.GetRow() IF ll_row <= 0 THEN MessageBox('提示', '请选择对象') RETURN END IF Open(w_aifmb_user_choice) s_aifmb_user_choice s_tran s_tran = Message.PowerObjectParm IF s_tran.UserID <> '' THEN ls_logname = dw_1.Object.logname[ll_row] ls_logpsw = dw_1.Object.psw[ll_row] String arg_msg UPDATE u_user SET aifmb_logname = :ls_logname, aifmb_logpsw = :ls_logpsw WHERE userid = :s_tran.userid Using sqlca; IF sqlca.SQLCode <> 0 THEN arg_msg = '绑定用户失败,' + sqlca.SQLErrText ROLLBACK Using sqlca; MessageBox('ERROR', arg_msg) RETURN END IF COMMIT Using sqlca; MessageBox('提示', '绑定成功') END IF end event type dw_2 from u_dw_rbtnfilter within w_aifmb_user_manage integer x = 2331 integer y = 184 integer taborder = 30 string dataobject = "dw_aifmb_rights" boolean hscrollbar = true boolean vscrollbar = true boolean hsplitscroll = true end type type cb_del from uo_imflatbutton within w_aifmb_user_manage integer x = 302 integer width = 151 integer height = 164 integer taborder = 40 boolean enabled = false string text = "删除" string normalpicname = "delete.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type cb_edit from uo_imflatbutton within w_aifmb_user_manage integer x = 151 integer width = 151 integer height = 164 integer taborder = 30 string text = "修改" string normalpicname = "open.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Long row row = dw_1.GetRow() IF row <= 0 THEN MessageBox('提示', '请选择修改对象') RETURN END IF s_aifmb_entuser_edit_tran s_tran s_tran.row = row s_tran.dw_user = dw_1 s_tran.dw_rights = dw_2 OpenWithParm(w_aifmb_entuser_edit, s_tran) end event type cb_add from uo_imflatbutton within w_aifmb_user_manage integer width = 151 integer height = 164 integer taborder = 20 string text = "新建" string normalpicname = "new.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;s_aifmb_entuser_edit_tran s_tran s_tran.row = 0 s_tran.dw_user = dw_1 s_tran.dw_rights = dw_2 OpenWithParm(w_aifmb_entuser_edit, s_tran) end event type cb_refresh from uo_imflatbutton within w_aifmb_user_manage integer x = 453 integer width = 151 integer height = 164 integer taborder = 20 string text = "刷新" string normalpicname = "refresh.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;parent.triggerevent('ue_refresh') end event type dw_1 from u_dw_rbtnfilter within w_aifmb_user_manage integer y = 184 integer width = 2331 integer height = 1660 integer taborder = 20 string dataobject = "dw_aifmb_entuser" boolean hscrollbar = true boolean vscrollbar = true boolean hsplitscroll = true end type event rowfocuschanged;call super::rowfocuschanged;This.SelectRow(0, False) IF currentrow > 0 THEN This.SelectRow(currentrow, True) Long i FOR i = 1 To dw_2.RowCount() dw_2.Object.ch[i] = f_aifmb_ind_power(dw_1.Object.powers[currentrow], dw_2.Object.rightsindex[i]) NEXT END IF end event event clicked;call super::clicked;IF row > 0 THEN This.SetRow(row) This.ScrollToRow(row) END IF end event type cb_exit from uo_imflatbutton within w_aifmb_user_manage integer x = 933 integer width = 151 integer height = 164 integer taborder = 10 string text = "退出" boolean cancel = true string normalpicname = "exit.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Close(PARENT) end event type r_bar from rectangle within w_aifmb_user_manage long linecolor = 16777215 integer linethickness = 4 long fillcolor = 1073741824 integer x = 2139 integer width = 146 integer height = 68 end type event constructor;this.fillcolor = 14215660 this.linecolor = 14215660 this.x = -1 this.y = -1 this.height = ln_bar.beginy - 5 end event type ln_bar from line within w_aifmb_user_manage long linecolor = 268435456 integer linethickness = 4 integer beginy = 172 integer endx = 2007 integer endy = 172 end type type ln_bar2 from line within w_aifmb_user_manage long linecolor = 16777215 integer linethickness = 4 integer beginy = 176 integer endx = 2039 integer endy = 176 end type