$PBExportHeader$w_grade_def.srw forward global type w_grade_def from w_publ_edit_choice end type end forward global type w_grade_def from w_publ_edit_choice integer width = 3054 integer height = 1880 string title = "客户等级" boolean minbox = true windowtype windowtype = popup! end type global w_grade_def w_grade_def on w_grade_def.create call super::create end on on w_grade_def.destroy call super::destroy end on type cb_func from w_publ_edit_choice`cb_func within w_grade_def boolean visible = false integer x = 960 integer width = 165 boolean enabled = false end type type cb_exit from w_publ_edit_choice`cb_exit within w_grade_def integer x = 837 end type type cb_add from w_publ_edit_choice`cb_add within w_grade_def integer x = 151 end type event cb_add::clicked;call super::clicked;IF NOT f_power_ind(1713,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF Long ll_newid,i String errmsg IF dw_edit_mode THEN dw_uc.AcceptText() IF dw_uc.GetNextModified(0, Primary!) = 0 THEN MessageBox(publ_operator,'没有任何修改,不可以保存!') RETURN END IF dw_uc.Object.grade[dw_uc.GetRow()] = Trim(dw_uc.Object.grade[dw_uc.GetRow()]) IF dw_uc.Object.grade[dw_uc.GetRow()] = '' THEN MessageBox(publ_operator,'请输入客户等级!') RETURN END IF IF dw_uc.Object.gradeid[dw_uc.GetRow()] = 0 THEN ll_newid = f_sys_scidentity(0,"u_grade_def","gradeid",errmsg,TRUE,id_sqlca) IF ll_newid <= 0 THEN MessageBox(publ_operator,errmsg) RETURN END IF dw_uc.Object.gradeid[dw_uc.GetRow()] = ll_newid dw_uc.Object.opdate[dw_uc.GetRow()] = datetime(today(), now()) dw_uc.Object.opemp[dw_uc.GetRow()] = publ_operator else dw_uc.Object.moddate[dw_uc.GetRow()] = datetime(today(), now()) dw_uc.Object.modemp[dw_uc.GetRow()] = publ_operator END IF END IF IF dw_edit_mode THEN String ls_errmsg IF dw_uc.Update() = -1 THEN IF Pos(ins_sqlerrtext,"Cannot insert duplicate key row") > 0 THEN ls_errmsg = "关键内容重复" ELSE ls_errmsg = "因为网络或其他原因>"+ins_sqlerrtext END IF ROLLBACK; MessageBox (publ_operator,ls_errmsg+",保存操作失败!",Exclamation!,OK!) LS_UPDATE_FLAG = FALSE RETURN ELSE COMMIT; FOR i = 1 TO 4 dw_uc.SetTabOrder ( i, 0 ) NEXT LS_UPDATE_FLAG = TRUE END IF ins_sqlerrtext = "" ELSE Long li_row, li_cur_row li_cur_row = dw_uc.GetRow() li_row = dw_uc.InsertRow (0) FOR i = 1 TO 4 dw_uc.SetTabOrder ( i, i*10 ) NEXT dw_uc.SelectRow(0,FALSE) dw_uc.ScrollToRow (li_row) dw_uc.SelectRow(li_row,TRUE) dw_uc.SetFocus() modifyrow_no = li_row END IF dw_edit_mode = NOT dw_edit_mode WF_FACE_CHANGE() end event type cb_edit from w_publ_edit_choice`cb_edit within w_grade_def integer x = 343 end type event cb_edit::clicked;call super::clicked;if not f_power_ind(1713,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF Long i IF dw_edit_mode THEN IF dw_uc.GetItemStatus(dw_uc.GetRow(), 0, Primary!) = NewModified! OR dw_uc.GetItemStatus(dw_uc.GetRow(), 0, Primary!) = New! THEN dw_uc.DeleteRow(dw_uc.GetRow()) ELSE dw_uc.ReselectRow(dw_uc.GetRow()) END IF FOR i = 1 TO 4 dw_uc.SetTabOrder ( i, 0 ) NEXT modifyrow_no = 0 ELSE modifyrow_no = dw_uc.GetRow() FOR i = 1 TO 4 dw_uc.SetTabOrder ( i, i*10 ) NEXT dw_uc.SetFocus() dw_uc.SelectRow(0,FALSE) dw_uc.ScrollToRow (modifyrow_no) dw_uc.SelectRow(modifyrow_no,TRUE) END IF dw_edit_mode = NOT dw_edit_mode WF_FACE_CHANGE() end event type cb_delet from w_publ_edit_choice`cb_delet within w_grade_def integer x = 535 end type event cb_delet::clicked;call super::clicked;IF NOT f_power_ind(1713,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF MessageBox (publ_operator,"是否确定要删除当前记录?(选择确定后记录将不可恢复)",Question!,YesNo! ) = 2 THEN RETURN END IF String arg_msg IF DW_UC.GetRow() <= 0 THEN MessageBox('','没有操作目标记录!') RETURN END IF DW_UC.SetRedraw (FALSE) DW_UC.DeleteRow (0) DW_UC.TriggerEvent (RowFocusChanged!) IF DW_UC.Update() = -1 THEN ROLLBACK; MessageBox (publ_operator,"删除记录操作失败!",Exclamation!,OK!) ELSE COMMIT; END IF DW_UC.SetRedraw (TRUE) end event type cb_choice from w_publ_edit_choice`cb_choice within w_grade_def boolean visible = false integer x = 1152 integer width = 165 boolean enabled = false end type type dw_uc from w_publ_edit_choice`dw_uc within w_grade_def integer width = 3026 integer height = 1600 string dataobject = "dw_grade_def" end type event dw_uc::dwnkey;call super::dwnkey;IF Key = keyenter! THEN keybd_event ( 9, 0, 0 , 0 ) // 按下tab keybd_event ( 9, 0, 2, 0 ) // 释放tab RETURN 1 END IF end event type cb_rtr from w_publ_edit_choice`cb_rtr within w_grade_def end type type cb_help from w_publ_edit_choice`cb_help within w_grade_def integer x = 686 end type type ln_bar from w_publ_edit_choice`ln_bar within w_grade_def end type type ln_bar2 from w_publ_edit_choice`ln_bar2 within w_grade_def end type type r_bar from w_publ_edit_choice`r_bar within w_grade_def end type