成绩评定表课程设计任务书摘要数据库技术是现代信息科学与技术的重要组成部分,是计算机数据处理与信息管理系统的核心。
数据库技术研究和解决了计算机信息处理过程中大量数据有效地组织和存储的问题,在数据库系统中减少数据存储冗余、实现数据共享、保障数据安全以及高效地检索数据和处理数据。
在企业经营管理中,采购是最重要的一个环节。
它对于企业降低经营成本、确保产品质量、缩短生产周期具有非常重要的意义。
采购管理为降低采购成本、提高采购效益提供了广阔的空间,但同时也为采购管理带来了新的机遇和挑战。
目前,我国大多数企业仍然没有建立健全的供应链管理体系,物资的采购还存在机构设置分散,资源浪费严重,信息传递滞后等问题。
本系统的主要功能是员工合同管理,对员工的合同签订信息、合同续签信息和合同终止信息进行管理和修改。
本系统的数据库是用SQL server 2000软件进行创建与设计,分别包括签订信息表、续签信息表和合同终止信息表三个表。
通过系统ODBC数据源管理工具把已创建的数据源与系统数据库相连。
利用VB软件对系统的窗口进行设计,通过这些窗体进行登录操作,对输入的用户信息进行验证,和注册新用户操作,并可以对数据进行添加与删除、查询及修改等操作。
关键词:合同管理系统;SQL server 2000;VB软件目录1 系统功能概述 (1)1.1合同管理系统功能分析 (1)1.2 系统结构图 (1)2 数据库设计 (1)2.1需求分析 (2)2.2 E-R模型 (2)2.3关系模型 (4)2.4表结构设计 (4)3.1用户登录 (7)3.2主窗体界面 (9)3.3添加修改删除页面 (10)3.4查询页面 (15)3.5注册新用户 (18)4 课设总结 (20)参考文献 (21)1 系统功能概述1.1合同管理系统功能分析合同管理系统主要功能是用计算机对员工合同的签订、续签以及终止进行登记、查询、删除等操作以及对员工合同的签订、续签、终止信息进行记录以及打印报表等操作。
本系统运用了VB 6.0及SQL Server2000,主要设计了以下几大功能:(1)对员工合同签订、续签以及终止信息进行修改、录入、浏览及删除。
(2)按查询条件对工合同签订、续签以及终止信息进行查询。
1.2 系统结构图图1合同管理管理系统总体结构2 数据库设计2.1需求分析在主控窗体中(MID窗体)点击各菜单实现管理和查询企业和员工间的所有合同信息。
具体功能包括:合同签定:用于管理企业与员工签定的劳动合同。
包括职员编号、合同名称、合同编号、合同期限、合同签定日期、备注等。
合同续签:用于处理已到期合同的续签事务,包括职员编号、合同编号、合同续签到日期、合同续签期限、新合同号、备注。
合同终止:用于终止已签定的合同,包括职员编号、合同编号、合同终止时间、备注等。
用户的登录和注册功能:2.2 E-R模型1.实体及属性图本系统有合同签订,合同续签。
合同终止三个实体,三个实体相对独立且相互之间不存在联系。
(1)合同签订实体及属性图如下:图2合同签订实体及属性(2)合同续签实体及属性图如下:图3合同续签实体及属性(3)合同终止实体及属性图如下:图4合同终止实体及属性(4)密码表实体及属性如下:2.3关系模型1.合同签订(职员编号,合同名称,合同编号,合同期限,合同签定日期,备注)2.合同续签(职员编号,合同编号,合同续签到日期,合同续签期限,新合同号,备注)3.合同终止(职员编号,合同编号,合同终止时间,备注)4.密码表 (用户名,密码) 用于记录注册过的用户名及密码2.4表结构设计本系统在SQL Server 2000数据库里共设计了4个数据表来记录数据:用户表、员工合同签订信息、员工合同续签信息、员工合同终止信息。
1.合同签订信息的建立与基本数据:SQL 语句如下:CREATE TABLE [dbo].[员工合同签定信息] ([职员编号] [int] NOT NULL ,[合同名称] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,[合同编号] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,[合同期限] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,[合同签定日期] [char] (20) COLLATE Chinese_PRC_CI_AS NULL ,[备注] [int] NULL) ON [PRIMARY]员工合同签订信息表2.合同续签信息的建立与基本数据:SQL 语句如下:CREATE TABLE [dbo].[ 员工合同续签信息] ([职员编号] [int] NOT NULL ,[合同编号] [char] (10)COLLATE Chinese_PRC_CI_AS NULL ,[合同续签到日期] [char] (20) COLLATE Chinese_PRC_CI_AS NULL, [合同续签期限] [char] (20) COLLATE Chinese_PRC_CI_AS NULL, [新合同号] [char] (10) COLLATE Chinese_PRC_CI_AS NULL,[备注] [int] NULL) ON [PRIMARY]员工合同续签信息表3.合同终止信息的建立与基本数据:SQL 语句如下:CREATE TABLE [dbo].[ 合同终止信息] ([职员编号] [int] NOT NULL ,[合同编号] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,[合同终止时间] [char] (20) COLLATE Chinese_PRC_CI_AS NULL , [备注] [int] NULL ,) ON [PRIMARY]员工合同终止信息表5.密码表的建立与基本数据:SQL 语句如下:create table 用户(用户名CHAR (10),密码CHAR (8));密码表3 系统各功能模块的详细设计3.1用户登录输入用户名及对应密码,即可登录,否则会提示相关的警告信息,按“取消”则退回主窗体界面。
页面设计如下:1、登录页面2、详细设计代码Private Sub Command1_Click()Static miCount As IntegerDim SQLStr As StringSQLStr = "Select * from 密码表Where 用户名= '" & Text1 & "'"Adodc1.RecordSource = SQLStrAdodc1.RefreshIf Adodc1.Recordset.BOF ThenMsgBox "用户名错误,重新输入", vbExclamation, "警告"Text1.Text = "": Text1.SetFocusElse '判断密码是否正确If Adodc1.Recordset.Fields("密码") = Text2 ThenMDIForm1.mDataMng.Enabled = TrueUnload MeElseMsgBox "密码错误,重新输入", vbExclamation, "警告"Text2.Text = "": Text2.SetFocusEnd IfEnd IfmiCount = miCount + 1If miCount = 3 Then Unload Me '若已输入3次,则关闭窗体End SubPrivate Sub Command2_Click()Unload MeEnd Sub3.2主窗体界面用户菜单可以实现注册新用户和退出功能;数据管理菜单可对数据库里的员工合同签订、续签、终止信息进行修改、添加、删除和查询。
页面设计如下:1、主窗体页面2、详细设计代码Private Sub MDIForm_Load()mDataMng.Enabled = FalseEnd SubPrivate Sub mFDenglu_Click()Denglu.ShowEnd SubPrivate Sub mDzhuce_Click()zcxyh.ShowEnd SubPrivate Sub mDqdxx_Click()qdxx.ShowEnd SubPrivate Sub mDxqxx_Click()xqxx.ShowEnd SubPrivate Sub mDzzxx_Click()zzxx.ShowEnd SubPrivate Sub mFExit_Click()EndEnd Sub3.3添加修改删除页面对数据库里的员工合同签订、续签、终止信息进行修改、添加、删除,并且可以进入查询界面。
页面设计如下:1、员工合同签订、续签、终止信息的添加修改删除页面:2、详细设计代码:Private Sub Command1_Click()Form1.ShowEnd SubPrivate Sub Form_Load()CmdFirst.Enabled = False ' [首记录]按钮无效CmdPre.Enabled = False ' [前移]按钮无效CmdNext.Enabled = True ' [后移]按钮有效CmdLast.Enabled = True ' [末记录]按钮有效CmdAdd.Enabled = True ' [添加]按钮有效CmdDel.Enabled = True ' [删除]按钮有效CmdOk.Enabled = False ' [确定]按钮无效CmdEsc.Enabled = False ' [取消]按钮无效Label7.Caption = "记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCountEnd SubPrivate Sub CmdAdd_Click() ' [添加]按钮的单击事件Adodc1.Recordset.AddNewCmdAdd.Enabled = FalseCmdDel.Enabled = FalseCmdOk.Enabled = TrueCmdEsc.Enabled = TrueEnd SubPrivate Sub CmdOk_Click() ' 单击[确认]按钮Adodc1.Recordset.UpdateCmdAdd.Enabled = TrueCmdDel.Enabled = TrueCmdOk.Enabled = FalseCmdEsc.Enabled = FalseEnd SubPrivate Sub CmdDel_Click() ' 单击[删除]按钮x = MsgBox("确实要删除当前记录吗?", vbYesNo + vbQuestion, "确认")If x = vbYes ThenAdodc1.Recordset.DeleteAdodc1.Recordset.MoveNextIf Adodc1.Recordset.EOF ThenAdodc1.Recordset.MoveLastEnd IfElseAdodc1.RefreshEnd IfEnd SubPrivate Sub CmdEsc_Click() ' 取消按钮Adodc1.RefreshCmdAdd.Enabled = TrueCmdDel.Enabled = TrueCmdOk.Enabled = FalseCmdEsc.Enabled = FalseEnd SubPrivate Sub CmdFirst_Click()Adodc1.Recordset.MoveFirst ' 记录指针移到首记录(显示首记录)CmdFirst.Enabled = False ' 让[首记录]按钮无效CmdPre.Enabled = False ' 让[前移]按钮无效CmdNext.Enabled = True ' 让[后移]按钮有效CmdLast.Enabled = True ' 让[末记录]按钮有效'在Label6上显示当前记录号/记录总数:Label7.Caption = "记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCountEnd SubPrivate Sub CmdPre_Click()Adodc1.Recordset.MovePrevious '记录指针移到前一条记录CmdNext.Enabled = TrueCmdLast.Enabled = TrueIf Adodc1.Recordset.BOF Then ' 如果记录指针移到首记录之前,Adodc1.Recordset.MoveFirst '则记录指针移到首记录上CmdFirst.Enabled = FalseCmdPre.Enabled = FalseEnd IfLabel7.Caption = "记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCountEnd SubPrivate Sub CmdNext_Click()Adodc1.Recordset.MoveNext '记录指针移到下一条记录CmdFirst.Enabled = TrueCmdPre.Enabled = TrueIf Adodc1.Recordset.EOF Then ' 如果记录指针移到了末记录之后Adodc1.Recordset.MoveLast '则记录指针移到末记录上CmdNext.Enabled = FalseCmdLast.Enabled = FalseEnd IfLabel7.Caption = "记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCountEnd SubPrivate Sub CmdLast_Click()Adodc1.Recordset.MoveLast ' 移到末记录CmdFirst.Enabled = TrueCmdPre.Enabled = TrueCmdNext.Enabled = FalseCmdLast.Enabled = FalseLabel7.Caption = "记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCountEnd SubPrivate Sub CmdN_Click()Dim n As Integern = Text7.TextAdodc1.Recordset.Move nLabel7.Caption = "记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCountEnd Sub3.4查询页面对数据库里的员工合同签订、续签、终止信息进行查询。