毕业设计论文_基于delphi的公司人事管理系统的设计与实现内容摘要:

tc Varchar 50 特长 gzsj Datetime 8 参加工作时间 gn Int 4 工龄 zp Image 16 照片 ssbm Varchar 50 所属部门 gz Varchar 10 工种 zw Varchar 10 职务 zc Varchar 20 职称 jbgz Float 8 基本工资 qtgz Float 8 其它 工资 drsj Datetime 8 调入时间 jl Varchar 200 简历 djrq Datetime 8 登记日期 第 11 页 共 28 页 各功能模块的实现 数据 模块设计 数据模块窗体主要功能是统一管理数据库访问组件, 在本系统中,这个模块是最重要的模块,其他模块都要通过这个模块中的组件访问数据库, 虽然只有简单的组件属性设置, Delphi自动生成代码,但是不容有误。 数据模块如图 3所示 : 图 3 数据模块 此模块的设计步骤如下: ( 1)在 Delphi中选择“ File” /“ New” /“ Data Module”菜单项,新建一个数据模块,命名为“ Data1”。 ( 2)在“ ADO”组件页中点选“ TADOConnection”组件,添加到窗体上,TADOConnection组件用到连接数据库,其它数据库组件通过它连接数据库。 ( 3)点选 ADOConnection1组件,在“ Object Inspector”窗口中,单击ConnectionString属性右侧的【„】按钮,弹出对话框如图 4所示。 图 4 数据连接对话框 ( 4)单击【 Build】按钮,在弹出的对话框中的“提供程序”选项卡中设 第 12 页 共 28 页 置希望连接 的数据,如图 5 所示。 图 5 连接属性对话框 ( 5)选择“连接”选项卡,设置连接相关设置,如图 6所示。 图 6 连接属性对话框 第 13 页 共 28 页 ( 6)单击【测试连接】按钮,如果连接成功,则提示成功,单击【确定】按钮完成数据库的连接。 ( 7)在窗体上添加 TADOQuery组件,设置 Connection为 “ ADOConnection1”。 这里的每个 TADOQuery组件连接一个数据表。 登录 界面的设计 登录 界面 主要是用于对用户进行安全性检查,以防止非法用户进入该系统。 只有合法的用户,才可以进入系统。 验证 操作员及其密码。 主要是通过对数据表中的操作员信息表的查 询,判断用户输入的密码是否符合数据库中的信息,如果符合则允许登录 ;否则会有相应的提示。 为了安全本系统会在三次错误之后自动关闭。 图 7 登录 界面 此模块的设计步骤如下: ( 1)新建一个窗 体 ,命名为“ frm_Login”,设置 Caption 属性为“登录”,设置 Position 属性为“ poScreenCenter”。 ( 2)在“ Additional”组件页中点选“ TImage”组件,添加到窗体上,设置 Align 属性为“ alClient”; Stretch 属性 为“ Tree”,在 Pictuer 属性中添加图片。 ( 3)在“ Standard”组件页中点选“ TEdit”组件,添加到窗体上,设置 Ctl3D属性为“ False”;设置 Text 属性为空,设置 Edir2 的 PasswordChar 属性为“ *”。 ( 4)在“ Additional”组件页中点选“ TSpeedButton”组件,添加到窗体上,设置 Caption 属性分别为“登录”和“取消”;设置 Flat 属性为“ True”。 此模块 调用了数据模块中的 ADOquery 组件连接数据库,然后用 select 语句对操作员信息这张数据表 进行操作。 对数据库的操作主要由以下代码实现: with do begin close。 第 14 页 共 28 页 (39。 select * from 操作员信息表 where 操作员名称 = :a and 操作员密码 = :b39。 )。 //使用 SQL语句检索数据表中的用户名和密码 (39。 a39。 ).Value:=trim()。 (39。 b39。 ).Value:=trim()。 open。 end。 这里将输入的用户名和密码与操作员信息表中的操作员名称和操作员密码进行比较,如果两者相同才能进入本系统。 新员工登记模块设计 新员工登记模块,主要用于添加、修改新员工的个人基本信息,如:姓名、性别、民族、文化程度等。 新员工登记模块运行结果如图 8 所示。 图 8 新员工登记模块 此模块设计如下: ( 1)新建一个窗体,命名为“ frm_xygdj”,设置 Caption属性为“新员工登记”,设置 Position 属性为“ poScreenCenter”。 ( 2)在窗体中添加“ TPanel”组件、“ TGroupBox”组件、“ TEdit”组件、“ TCombobox” 组件、“ TLabel”组件、“ TMaskEdit”组件、“ TMemo”组件、“ TBitbtn” 第 15 页 共 28 页 组件、“ TImage”组件,设置属性如表 5所示。 表 5 主要组件属性设置 组件名称 所在组件页 属性 值 Panel1 Standard Align Bevellnner BevelOuter alClient bvSpace bvLowered Panel2 Standard Align Bevellnner BevelOuter alNone bvSpace bvLowered Panel3 Standard Align Bevellnner BevelOuter alNone bvSpace bvLowered Groupbox1 Standard Caption 基本信息 Groupbox2 Standard Caption 其它信息 MaskEdit Additional Ctl3D EditMask False !9999/99/00。 1。 _ Image Additional Align Stretch alClient Ture 此模块调用数据模块中的 ADOquery 组件连接数据库中的人事表。 “保存”按钮的功能主要是通过 Insert 语句向数据库中插入和添加数据,这段 Insert 语句如下: with do begin close。 (39。 insert 人 事表 values (:a,:b,:c,:d,:e,:f,:g,:h,:i,:j,:k,:l,:m,:n,:o,:p,:q,:r,:s,:t,:u,:v,:w,:x,:y,:z,:aa,:ab,:ac,:ad,:ae,:af)39。 )。 这里需要注意的是在“ insert 人事表 values”后面的括号中的项目数要与数据表中的字段数目相同,因为这是向数据表中依次插入数据,如果不相同就会出错。 在编辑框的 OnChange 事件中添加如下代码,用来控制保存按钮的使用,如果没有完全填写信息, bitbtn 的 Enabled 属性就设置为 false, 则设置 【保存 】按钮不可用。 这部分判断输入是否为空的实现如下: procedure (Sender: TObject)。 begin if (39。 39。 ) and (39。 39。 ) and (39。 39。 ) and (39。 39。 ) then :=true else :=false。 第 16 页 共 28 页 end。 在窗体的 OnShow 事件中添加如下代码,用来向下拉列 表框( TCombobox)组件添加数据表中的数据, 为了避免下拉列表框中出现重复,这里用了 select distinct 语句,以民族为例。 with do begin close。 (39。 select distinct 民族 from 民族表 39。 )。 open。 end。 while Not do //在不是最后一条记录时进行循环 begin ((39。 民族39。 ).Value)。 //将指针指向下一条记录 end。 此模块中的,婚姻状况、文化程度等所有下拉列表框的实现都是这样,这里不再重复。 在一个企业里,难免会用重名的员工,所以姓名不能作为员工的唯一标识,那么如果用员工编号来做唯一标识,就可以解决这个问题了。 人为的编号也难免会出错,所以在这里我们设置单击“添加”按钮自动生成员 工编号。 这个功能实现,首先需要使用 select语句在人事表中找到最大的编号,实现如下: begin Close。 (39。 select max(bh) as ss From 人事表 39。 )。 Open。 end。 当然,如果是第一次添加新员工,返回值为空时,编号就由 001开始编排。 If (39。 ss39。 ).Value = null then s :=’ mr’ +39。 00139。 第 17 页 共 28 页 如果不为空就 需要分情况进行处理,这里实现代码如下: m:= Trim((39。 ss39。 ).Value)。 n:= StrToInt(copy(m,4,2))。 //将 m的值从第 4位取 2位变为整形 if n9 then s:= s+39。 0039。 + InttoStr(n +1) else if n99 then s:=s+39。 039。 + InttoStr(n +1) else s:= s+InttoStr(n +1)。 这样就有效的避免了人为操作的输入失误。 工资设置 模块设计 工资设置模块主要用于设置员工的工资信息,此窗体中主要应用的也是基本的 SQL 语句 Insert 向数据中插入数据。 工资设置模块运行结果如图 9 所示。 图 9 工资设置 模块 1 原文已完。 下文为附加文档,如不需要,下载后可以编辑删除,谢谢。 施工组织设计 本施工组织设计是本着“一流的质量、一流的工期、科学管理”来进行编制的。 编制时,我公司技术发展部、质检科以及项目部经过精心研究、合理组织、充分利用先进工艺,特制定本施工组织设计。 一、 工程概况 : 西夏建材城生活区 2 30住宅楼位于银川市新市区 ,橡胶厂对面。 本工程由宁夏燕宝房地产开发有限公司开发,银川市规划建筑设计院设计。 本工程耐火等级二级,屋面防水等级三级,地震防烈度为 8度,设计使用年限 50 年。 本工程建筑面积 :27楼。 30楼 m2。 室内地坪177。 以绝对标高 m 为准,总长 27楼 ; 30楼 m。 总宽 27楼 ; 30楼 m。 设计室外地坪至檐口高度 00m,呈长方形布置,东西向,三个单元。 本工程设计屋面为坡屋面防水采用防水涂料。 外墙水泥砂浆抹面,外刷浅灰色墙漆。 内墙面除卫生间 200 300 瓷砖,高到顶外,其余均水泥砂桨罩面,刮二遍腻子;楼梯间内墙采用 50 2 厚胶粉聚苯颗粒保温。 地面除卫生间 200 200 防滑地砖,楼梯间 50 厚细石砼 1: 1 水泥砂浆压光外,其余均采用 50 厚豆石砼毛地面。 楼梯间单元门采用楼宇对讲门,卧室门、卫生间门采用木门,进户门采用保温防盗门。 本工程窗均采用塑钢单框双玻窗,开启窗均加纱扇。 本工程设计为节能型住宅,外墙均贴保温板。 本工程设计为砖混结构,共六层。 基础采用 C30 钢筋砼 条形基础,上砌 MU30 毛石基础,砂浆采用 M10 水泥砂浆。 一、二、三、四层墙体采用 M10 混合砂浆砌筑 MU15 多孔砖;五层以上采用 混合砂浆砌筑 MU15 多孔砖。 本工程结构中使用主要材料:钢材: I 级钢, II 级钢;砼:基础垫层 C10,基础底板、地圈梁、基础构造柱均采用 C30,其余均 C20。 本工程设计给水管采用 PPR 塑料管,热熔连接;排水管采用UPVC 硬聚氯乙烯管,粘接;给水管道安装除立管及安装 IC 卡水表的管段明设计外,其余均暗设。 本工程 设计采暖为钢制高频焊翅片管散热器。 本工程设计照明电源采用 BV- 铜芯线,插座电源等采用BV- 4 铜芯线;除客厅为吸顶灯外,其余均采用座灯。 二、 施工部署及进度计划 工期安排 本工程合同计划开工日期: 2020 年 8 月 21 日,竣工日期:2020 年 7 月 10 日,合同工期 315 天。 计划 2020 年 9 月 15 日前 3 完成基础工程, 2020 年 12 月 30 日完成主体结构工程, 2020 年 6月 20 日完成装修工种,安装工程穿插进行,于 2020 年 7 月 1 日。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。