第4章用户及权限管理.ppt
《第4章用户及权限管理.ppt》由会员分享,可在线阅读,更多相关《第4章用户及权限管理.ppt(51页珍藏版)》请在三一文库上搜索。
1、上一次课讲到在Visual FoxPro 6.0中设计程序的Splash界面、设计用户登录界面以及为用户密码加密的方法。请同学们回顾这样两个问题:,Bitxor函数的格式 及功能是什么?,2.文档界面类型有哪些?,函数格式:BITXOR(n1, n2) 功能:返回n1, n2两个数值型数值按位进行异或运算的结果。,VFP允许创建单文档界面和多文档界面。 单文档界面(SDI)由一个或多个独立窗口组成,都在桌面上独立显示。 多文档界面(MDI)由单一主窗口组成,应用程序包含在主窗口或浮动在主窗口顶端。,上一次课主要学习的内容,本章主要介绍用户数据表的设计、权限管理,用户管理。,第4章.用户及权限管
2、理,人力资源管理系统中用户管理使用用户组和用户2个表的双层管理机制,首先通过用户组设置权限,然后将用户归属某个组获取权限。 在HRMData数据库中新建“UserGroup”表存放用户组信息;新建“Users”表存放用户信息。 表结构如下:,4.1设计数据表, 字段名 类型 宽度 索引 1 组编号 字符型 2 2 组名称 字符型 20 升序 3 基础信息管理 逻辑型 1 4 员工档案管理 逻辑型 1 5 奖励记录管理 逻辑型 1 6 惩罚记录管理 逻辑型 1 7 培训记录管理 逻辑型 1 8 调动记录管理 逻辑型 1 9 考评记录管理 逻辑型 1 10 用户组管理 逻辑型 1,1.UserGr
3、oup表结构, 字段名 类型 宽度 11 用户管理 逻辑型 1 12 奖励记录查询 逻辑型 1 13 惩罚记录查询 逻辑型 1 14 培训记录查询 逻辑型 1 15 调动记录查询 逻辑型 1 16 考评记录查询 逻辑型 1 17 员工档案查询 逻辑型 1 18 用户密码修改 逻辑型 1 19 培训项目管理 逻辑型 1, 字段名 类型 宽度 索引 Nulls 1 用户名 字符型 20 升序 是 2 密码 字符型 20 是 3 姓名 字符型 20 4 用户组 字符型 2 升序 是,2.Users表结构,管理用户,可以新增、修改、删除等。,4.2用户管理表单,在项目管理器中新增表单:UserAdmi
4、n 将users和usergroup表添加到数据环境中,设置表users的属性 exclusive=.T. bufferModeOverRide=2-保守式行缓冲 在表单中添加控件: 1个列表框、4个标签、4个文本框、1个组合框、4个按钮。,.创建表单,AutoCenter=.T. BorderStyle=2-固定对话框 Caption=“部门结构设置“ Closable=.F. Height=267 Width=466 Icon=people.ico MDIForm=.T. MaxButton=.F. MinButton=.F. ShowTips=.T. ShowWindow=1-在顶层表单
5、中 WindowType=1-模式 Name=“userAdmin“ CmdNew.Caption=“新增“ CmdModify.Caption=“修改“ .ToolTipText=“新增“ .ToolTipText=“修改“ CmdExit.Caption=“退出“ CmdDelete.Caption=“删除“ .ToolTipText=“退出“ .ToolTipText=“删除“ .Cancel=.T.,.属性设置-1/2,txt用户名.ControlSource=users.用户名 txt密码.PassWordChar=“*“ txt确认密码.PassWordChar=“*“ txt姓名
6、.ControlSource=users.姓名 cbo用户组.controlsource=users.用户组 .rowsourcetype=6-字段 .rowsource=users.组编号,组名称 .style=2-下拉列表框 表单自定义属性: OldRecord=0 新增记录前的当前记录 formmode=“browse“ 表单状态browse/new/modify 表单自定义方法: setmode,.属性设置-2/2,*获取要设置的状态 IF THISFORM.FormMode = “browse“ FormMode = .F. ELSE FormMode = .T. ENDIF *控制
7、文本框 THISFORM.SETALL(“ReadOnly“, !FormMode, “TextBox“) *控制组合框 THISFORM.SETALL(“Enabled“ , FormMode, “ComboBox“),.setmode-1/3,*控制“新增”按钮 THISFORM.CmdNew.Enabled = !FormMode *控制“退出”按钮 THISFORM.CmdExit.Enabled = !FormMode *更改按钮标题 IF !THISFORM.FormMode = “browse“ THISFORM.CmdModify.Caption = “保存“ THISFORM
8、.CmdDelete.Caption = “取消“ ELSE,.setmode-2/3,THISFORM.CmdModify.Caption = “修改“ THISFORM.CmdDelete.Caption = “删除“ ENDIF *如果用户名为“admin”,不能修改其用户名 IF THISFORM.UserList.Value = “admin“ ; .AND. THISFORM.FormMode != “new“ THISFORM.txt用户名.ReadOnly = .T. ENDIF,.setmode-3/3,表单的init代码: *表单进入“浏览”状态 THISFORM.Form
9、Mode = “browse“ THISFORM.SetMode *刷新表单 THISFORM.Refresh,.添加代码,THISFORM.Refresh,.列表框userlist.Click,*保存记录指针的位置 SELECT USERS THISFORM.OldRecord = RECNO() *设置列表框的数据源 THISFORM.UserList.ControlSource = “ THISFORM.UserList.RowSourceType = 0 THISFORM.UserList.RowSource = “,.新增CmdNew.Click-1/2,*新增空白记录 APPEND
10、 BLANK THISFORM.UserList.Requery *设置表单状态 THISFORM.FormMode = “new“ THISFORM.SetMode *刷新表单 THISFORM.Refresh,.新增CmdNew.Click-2/2,*如果是作为“修改”按钮 IF THIS.CAPTION = “修改“ *使表单进入“修改”状态 THISFORM.FormMode = “Modify“ THISFORM.SetMode *刷新表单 THISFORM.Refresh RETURN ENDIF *精确比较 SET EXACT ON,.修改CmdModify.Click-1/10
11、,*如果是作为“保存”按钮 IF THIS.CAPTION = “保存“ *用户名不能为空 IF EMPTY(ALLTRIM(THISFORM.txt用户名.Value) MESSAGEBOX(“用户名不能为空“, 48, “人力资源管理系统“) THISFORM.txt用户名.SetFocus RETURN ENDIF,.修改CmdModify.Click-2/10,*“新增”时密码不能为空 IF EMPTY(ALLTRIM(THISFORM.txt密码.Value) ; .AND. EMPTY(ALLTRIM(THISFORM.txt确认密码.Value) ; .AND. THISFORM
12、.FormMode != “new“ MESSAGEBOX(“密码不能为空“, 48, “人力资源管理系统“) THISFORM.txt密码.SetFocus RETURN ENDIF,.修改CmdModify.Click-3/10,*密码与确认密码要一致 IF ALLTRIM(THISFORM.txt密码.Value) != ALLTRIM(THISFORM.txt确认密码.Value) MESSAGEBOX(“密码与确认密码不一致“, 48, “人力资源管理系统“) THISFORM.txt密码.SetFocus RETURN ENDIF,.修改CmdModify.Click-4/10,*
13、姓名不能为空 IF EMPTY(ALLTRIM(THISFORM.txt姓名.Value) MESSAGEBOX(“姓名不能为空“, 48, “人力资源管理系统“) THISFORM.txt姓名.SetFocus RETURN ENDIF,.修改CmdModify.Click-5/10,*用户组不能为空 IF EMPTY(THISFORM.cbo用户组.Value) MESSAGEBOX(“用户组不能为空“, 48, “人力资源管理系统“) THISFORM.cbo用户组.SetFocus RETURN ENDIF,.修改CmdModify.Click-6/10,*如果用户数据无误 YN =
14、MESSAGEBOX(“确认保存“, 4+32, “人力资源管理系统“) IF YN =6 SELECT Users IF (TABLEUPDATE(.F.) = .F.) MESSAGEBOX(“用户名重复“, 48, “人力资源管理系统“) THISFORM.txt用户名.SETFOCUS RETURN ENDIF,.修改CmdModify.Click-7/10,*如果密码与确认密码不为空 IF .NOT. (EMPTY(ALLTRIM(THISFORM.txt密码.Value) ; .AND. EMPTY(ALLTRIM(THISFORM.txt确认密码.Value) sPass = E
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 用户 权限 管理
链接地址:https://www.31doc.com/p-2082769.html