《(库存管理)图书库存管理系统设计与开发》由会员分享,可在线阅读,更多相关《(库存管理)图书库存管理系统设计与开发(12页珍藏版)》请在金锄头文库上搜索。
1、图书库存管理系统设计与开发一、 课程设计目的: 无论是学校、出版社或其他一些单位,往往需要对图书库存和出库进行管理,而这些工作是一个繁杂的事情,如何用一个现代化的管理手段来代替复杂的手工劳动,这是一个重要的问题。本例结合图书库存与出库两方面的问题,开发出一个比较科学的图书库存管理系统,可以供一些图书使用单位和出版单位参考使用。二、 需求分析:1、 功能需求(1) 对图书入库的管理(更新、添加、修改和删除)(2) 对图书出库的管理(更新、添加、修改和删除)(3) 对图书进行入库统计(4) 对图书进行出库统计(5) 对图书入库结存报表的查询(6) 对图书出库结存报表的查询(7) 对用户权限的维护2
2、、 总体设计(1) 系统层次框图FLASH画面系统主控界面入库结存报表出库结存报表入库管理权限维护出库统计入库统计出库管理图书的更新图书的删除图书的修改图书的添加计算库存金额报表统计删除用户修改密码增加用户出库报表出库金额 (2) 系统模块设计(各模块功能说明)1、 FLASH画面:系统启动画面,它首先运行一个FLASH画面,在一定间隔之后,该画面自动隐藏,然后自动进入主控界面,再执行各个功能。2、 系统主控界面:系统的主控界面既系统主窗体,它用于控制其他功能模块的运行。该主控界面为每一个使用模块赋予了一个用户权限,只有经过相关的权限认证后才能进行相关的操作。3、 图书入库管理:由于图书入库是
3、一个多次完成的过程,因此,需要用一个图书主表与相关的数据表进行关联。在该窗体中,只需要输入一本书的基本信息,然后在下面的表格中可以多次进行该书的入库记录。4、 图书出库管理:由于图书出库也是一个多次完成的过程,因此,需要用一个图书主表与相关的数据表进行关联。在该窗体中,只需要输入一本书的基本信息,然后在下面的表格中可以多次进行该书的出库记录。5、 图书入库结存窗体:图书结存是库存管理的重要内容,往往一个库房中图书众多,统计起来非常麻烦,因此能否实现自动统计功能是非常重要的一个问题。通过该窗体,可以逐条地对记录进行每一本书的入库金额计算,然后通过报表自动统计出每一本图书的册数、金额、全部图书的总
4、册数和总金额。6、 图书出库结存窗体:图书结存是库存管理的重要内容,往往一个库房中图书众多,统计起来非常麻烦,因此能否实现自动统计功能是非常重要的一个问题。通过该窗体,可以逐条地对记录进行每一本书的出库金额计算,然后通过报表自动统计出每一本图书的册数、金额、全部图书的总册数和总金额。7、 入/出库图书结存报表:作为一个数据库应用系统,一个信息输出的报表往往是不可少的,因此我们为入/出库数据表创建一个报表,该报表不仅可以报告入/出库的全部信息,而且可以对一些数据进行结存统计,如果对图书的总册数、图书的总金额等直接在报表中进行相关的统计,完全不需要人工去统计。8、 用户权限维护窗体:作为一个完整的
5、系统,往往需要对用户权限进行控制或认证,用户可以通过本窗体进行增加、删除或修改密码。 (3) 数据库设计 1、 名称:入库图书数据表名称字段类型字段大小索引忽略空值图书编号Text50普通索引否书名Text50无否作者Text10无否出版社Text50无否版次Text10无否库存数Integer默认无否单价Currency默认无否库存金额Currency默认无否入库时间Date/time默认无否 2、名称:图书出库数据表名称字段类型字段大小索引忽略空值图书编号Text50普通索引否书名Text50无否作者Text10无否出版社Text50无否版次Text10无否出库数Integer默认无否单价
6、Currency默认无否出库金额Currency默认无否出库时间Date/time默认无否 3、名称:图书主表数据表名称字段类型字段大小索引忽略空值图书编号TEXT50主要的、唯一的否书名TEXT50无否作者TEXT10无否出版社TEXT50无否 4、名称:密码数据表名称字段类型字段大小索引忽略空值密码Text20主要的、唯一的否用户名Text50无否三、详细设计:(1) 各模块界面简介及代码a、FLASH画面:计时器控件的过程代码:Private Sub Timer1_Timer()Text1.Text = Text1.Text + 1If Text1.Text = 20 ThenTimer
7、1.Interval = 0Form1.HideForm2.ShowEnd IfEnd Sub退出系统标签的过程代码:Private Sub Label3_Click()Unload MeEnd Subb、系统主控界面:“图书入库”标签的过程代码:Private Sub Label1_Click()Dim msgoldmark = Data1.Recordset.Bookmarkmsg = Trim(InputBox(请输入用户密码: , 权限认证)msg = 密码 like & msg & Data1.Recordset.FindFirst msgIf Data1.Recordset.NoM
8、atch ThenMsgBox (你无权进入系统操作!)Else入库管理.ShowEnd IfEnd Sub“图书出库”标签的过程代码:Private Sub Label2_Click()Dim msgoldmark = Data1.Recordset.Bookmarkmsg = Trim(InputBox(请输入用户密码: , 权限认证)msg = 密码 like & msg & Data1.Recordset.FindFirst msgIf Data1.Recordset.NoMatch ThenMsgBox (你无权进入系统操作!)Else图书出库.ShowEnd IfEnd Sub“权
9、限维护”标签的过程代码:Private Sub Label3_Click()MMFORM.ShowEnd Sub“入库结存”标签的过程代码:Private Sub Label4_Click()Dim msgoldmark = Data1.Recordset.Bookmarkmsg = Trim(InputBox(请输入用户密码: , 权限认证)msg = 密码 like & msg & Data1.Recordset.FindFirst msgIf Data1.Recordset.NoMatch ThenMsgBox (你无权进入系统操作!)Else入库统计.ShowEnd IfEnd Sub
10、“出库结存”标签的过程代码:Private Sub Label5_Click()Dim msgoldmark = Data1.Recordset.Bookmarkmsg = Trim(InputBox(请输入用户密码: , 权限认证)msg = 密码 like & msg & Data1.Recordset.FindFirst msgIf Data1.Recordset.NoMatch ThenMsgBox (你无权进入系统操作!)Else出库统计.ShowEnd IfEnd Sub“返回到启动封面”标签的过程代码:Private Sub Label6_Click()Form1.ShowUnl
11、oad MeEnd Subc、图书入、出库管理窗体: d、图书出库结存窗体:相关代码如下:“添加”按钮的过程代码:Private Sub Command1_Click()On Error GoTo AddErr datprimaryRS.Recordset.AddNew Exit SubAddErr: MsgBox Err.DescriptionEnd Sub“更新”按钮的过程代码:Private Sub Command2_Click() On Error GoTo UpdateErr datprimaryRS.Recordset.UpdateBatch adAffectAll Exit Su
12、bUpdateErr: MsgBox Err.DescriptionEnd Sub“删除”按钮的过程代码:Private Sub Command3_Click()On Error GoTo DeleteErr With datprimaryRS.Recordset .Delete .MoveNext If .EOF Then .MoveLast End With Exit SubDeleteErr: MsgBox Err.DescriptionEnd Sub“刷新”按钮的过程代码:Private Sub Command4_Click() 只有多用户应用程序需要 On Error GoTo Re
13、freshErr datprimaryRS.Refresh Exit SubRefreshErr: MsgBox Err.DescriptionEnd Sub“关闭”按钮的过程代码:Private Sub Command5_Click()Unload MeEnd Sub“出库金额”按钮的过程代码:Private Sub Command6_Click()Text5.Text = Val(Text3.Text) * Val(Text4.Text)datprimaryRS.Recordset.MoveNextIf datprimaryRS.Recordset.EOF = True ThenMsgBox (记录已经统计完毕!)End IfEnd Sub“出库报表”按钮的过程代码:Private Sub Command7_Click()DataReport2.ShowEnd Subd、图书入库结存窗体:相关代码如下:“添加”按钮的过程代码:Private Sub Command1_Click() On Error GoTo