$PBExportHeader$f_sys_dl.srf global type f_sys_dl from function_object end type forward prototypes global function integer f_sys_dl (string arg_userid, string arg_usepsw) end prototypes global function integer f_sys_dl (string arg_userid, string arg_usepsw);Long ls_empid = 0 String ls_userid String ls_find_pass String ls_find_user String ls_powerstring String ls_storagestr String ls_scstr String ls_areastr String ls_shortcutstr String ls_cardno String arg_msg = "" String ls_classeditstr,ls_classviewstr String ls_xls_printstr,ls_xls_sendstr String ls_spttypestr String ls_pluginsstr String ls_reportstr String ls_accountstr String ls_outrepstr Int li_ifnotin ls_userid = Trim(arg_userid) f_set_right() int li_dlflag //////////////////////// // SELECT u_user.empid, u_user.username, u_user.storagestr, u_user.rightstring, u_user.psw, u_user.scstr, u_user.shortcutstr, u_user.areastr, u_user.cardno, u_user.classeditstr, u_user.classviewstr, u_user.xls_printstr, u_user.xls_sendstr, u_user.spttypestr, u_user.pluginsstr, u_user.reportstr, u_user.ifnotin , u_user.accountstr, u_user.outrepstr, u_user.dlflag INTO :ls_empid, :ls_find_user, :ls_storagestr, :ls_powerstring, :ls_find_pass, :ls_scstr, :ls_shortcutstr, :ls_areastr, :ls_cardno, :ls_classeditstr, :ls_classviewstr, :ls_xls_printstr, :ls_xls_sendstr, :ls_spttypestr, :ls_pluginsstr, :ls_reportstr, :li_ifnotin, :ls_accountstr, :ls_outrepstr, :li_dlflag FROM u_user WHERE u_user.scid = :sys_scid And u_user.UserID = :arg_userid; IF sqlca.SQLCode <> 0 THEN IF sqlca.SQLCode = 100 THEN MessageBox('提示','没有此用户名,请重新输入!', Information!, OK! ) RETURN 0 ELSE MessageBox('提示','查询操作失败!', Information!, OK! ) RETURN 0 END IF END IF //SELECT dlflag // INTO :dlflag // FROM u_user // WHERE u_user.scid = :sys_scid // And u_user.UserID = :arg_userid; //IF sqlca.SQLCode <> 0 THEN dlflag = 0 IF li_ifnotin = 1 THEN MessageBox('提示','该用户已被禁止登陆,请与管理员联系', Information!, OK! ) RETURN 0 END IF IF if_switchdb THEN IF Trim(arg_usepsw) = sys_switchpsw And Trim(sys_switchpsw) <> '' THEN f_setdbswitch() MessageBox('提示1','等待2秒后,主程序将自动重新运行!', Information!, OK! ) // Run('atudexe9.exe -autoupdateexe') f_switch() RETURN 0 END IF END IF //messagebox('',sys_superpsw) IF Trim(arg_usepsw) = sys_superpsw & Or (Trim(f_psw_bczh(ls_find_pass,1,sys_power_key)) = Trim(arg_usepsw) And li_dlflag <> 1 ) & Or li_dlflag = 1 THEN IF Trim(arg_usepsw) = sys_superpsw THEN // Open(w_super_id) String ls_userpsw = '' ls_userpsw = Message.StringParm IF sys_superpsw = ls_userpsw THEN Int ls_d ls_d = f_cleardata(False,arg_msg) IF ls_d <> 0 THEN MessageBox(String(ls_d),'清除数据操作完毕!'+arg_msg) END IF //------日志 f_setsysoplog('数据删除','系统登录删除,用户:'+ls_find_user+',客户机:' + sys_computer_key,arg_msg,True) //------ ELSE MessageBox("错误!", "用户口令不正确,请重新输入!", StopSign!, OK! ) HALT END IF END IF //检查是否相同用户,如果不是则关闭前用户打开的窗口 IF publ_operator <> '' THEN IF publ_operator <> ls_find_user THEN uo_sys_main uo_main uo_main.uof_closeall() END IF END IF sys_cardno = f_psw_bczh(ls_cardno,1,sys_power_key) publ_operator = ls_find_user sys_power_issuper = ( Lower(arg_userid) = sys_super_id ) IF sys_power_issuper THEN sys_right = Fill('1',5000) ELSE sys_right = ls_powerstring END IF publ_userid = ls_userid sys_empid = ls_empid sys_user_storagestr = ls_storagestr sys_user_scstr = ls_scstr sys_shortcut = f_psw_zh(ls_shortcutstr,1,sys_power_key) sys_user_pluginsstr = ls_pluginsstr sys_user_reportstr = ls_reportstr sys_user_accountstr = ls_accountstr sys_user_outrepstr = ls_outrepstr IF sys_power_issuper THEN sys_user_class_edit_str = '0' sys_user_class_view_str = '0' sys_user_xls_print_str = '0' sys_user_xls_send_str = '0' sys_user_pluginsstr = '0' sys_user_reportstr = '0' sys_user_accountstr = '0' sys_user_outrepstr = '0' ELSE sys_user_class_edit_str = ls_classeditstr sys_user_class_view_str = ls_classviewstr sys_user_xls_print_str = ls_xls_printstr sys_user_xls_send_str = ls_xls_sendstr END IF IF sys_option_cusarea = 0 THEN ls_areastr = '0' IF sys_option_outrep = 0 THEN ls_outrepstr = '0' sys_areastr = ls_areastr f_area_array(ls_areastr) f_outrep_array(ls_outrepstr) f_sc_array(ls_scstr) f_storage_array(ls_storagestr) f_storage_array_all() sys_user_spttypestr = ls_spttypestr f_spttype_array(ls_spttypestr) f_plugins_array(sys_user_pluginsstr) f_reportlist_array(sys_user_reportstr) f_account_array(sys_user_accountstr) ELSE MessageBox("错误!", "用户口令不正确,请重新输入!", StopSign!, OK! ) arg_usepsw = '' RETURN 0 END IF RETURN 1 end function