




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1系统分析1.1需求分析进、存管理是超市仓储管理中的核心环节,也是一个企业能否取得效益的关键。在现行的超市仓储管理中,存在几个共有的问题。(1)工作内容重复、效率低、工作量大超市从订购原材料到实际销售,期间需要很多流程。这其中要填制大量的单据。在填制这些单据时,要重复录入很多的信息。例如,商品名称、生产厂家、规格、包装等信息,可能在订货、入库、销售、库存及出库记录中反复出现,每次订货、入库、销售或统计库存时,都要重复录入这些信息,由于商品品种繁杂,这无疑降低了工作人员的工作效率,加重了工作负担。(2)查询、统计困难每天的进货出货情况只有把单据交给财务部记账后,才能反映给经理,企业决策者不能实时
2、有效地了解仓库的管理情况和出现的问题。(3)库存商品积压、缺货不能及时补进在库存管理方面,由于库存品种繁多,手工统计耗时、耗力,有时还出现库存统计不准的现象,这便出现了库存商品积压、缺货商品不能及时补进的现象。(4)不能及时处理往来账项很多供应商的基本资料例如规模、地址、员工数、年产值不能及时有效地整理出来,不能及时的了解供应商的资料,从而造成决策失误。1.2系统目标应用自动化识别仓储管理系统后,可以使该超市有效管理企业的商品进销存情况,提高企业经营、管理和决策的水平和效率,从而提升企业的核心竞争力。1.3功能分析自动化识别仓储管理系统主要实现以下功能:(1)对商品的基础信息进行维护和管理。能
3、够完成商品信息的添加、修改和删除,并按照一定的条件查询商品信息。(2)对商品的批量销售进行处理。顾客购买商品可能是一种也可能是多种,如果能够批量销售商品,那么会大大提高工作效率。(3)客户会员管理。在商品销售过程中,记录客户的消费信息。(4)库存商品查看。可按不同字段和条件查询库存商品信息。(5)查询统计功能。要求既可以按日期查询也可以按用户选择的字段和输入的内容查询,并在查询过程中统计销售数量和销售金额。2系统设计2.1开发及运行环境表2.1 开发及运行环境系统开发平台Visual Basic 6.0数据库管理系统软件Microsoft access 2003运行平台Windows xp/W
4、indows 2003/Windows 7分辨率最佳效果 10247682.2项目规划商品进销存管理系统是一个非常有特点的管理软件,系统由基础信息管理、日常业务管理、库存商品管理、商品查询统计、系统管理、辅助工具、帮助等几个功能模块组成,规划系统功能模块如下:(1)日常业务管理模块日常业务管理模块主要包括商品入库、商品销售出库、销售退货入库、入库退货出库4部分。(2)库存管理模块库存管理模块主要包括库存查询、库存盘点、仓库设置3部分。(3)商品查询统计模块商品查询统计模块主要包括入库查询、入库退货查询、销售查询、销售退货查询4部分。(4)基本资料管理模块基本资料管理模块主要包括商品资料管理、供
5、应商管理、会员管理、人员管理、本单位信息5部分。(5)系统管理模块系统管理模块主要包括密码修改、数据备份与恢复、清空日志、系统日志4部分。(6)辅助工具模块辅助工具模块包括计算器、记事本、通讯录和条码打印4部分。(7)帮助模块帮助模块主要包括帮助、关于2部分。(8)退出包括退出1部分。2.3系统功能结构通过前面的功能分析,下面将商品进销存管理系统划分为8大功能模块,其完整的功能结构如图2.1所示。自动化识别仓储管理帮助关于退出本单位信息商品资料管理供应商管理会员管理人员管理销售退货查询销售查询入库退货查询入库查询仓库设置库存盘点库存查询商品查询统计库存管理基本资料管理商品入库商品销售出库销售退
6、货日常业务管理入库退货系统管理退出帮助辅助工具退出密码修改系统备份恢复清空日志系统日志计算器记事本通讯录条码打印图2.1 自动化识别仓储管理系统功能架构图2.4程序设计清单表2.2 程序设计清单文件名称文件类型说明bdwdy窗体文件本单位定义窗体bfyhf窗体文件备份与恢复窗体cksz窗体文件仓库设置窗体frm_main窗体文件主菜单窗体gysgl窗体文件供应商管理窗体hyxxgl窗体文件供应商管理窗体hyxxgl窗体文件会员信息管理窗体jsb窗体文件记事本窗体jsq窗体文件计算器窗体kccx窗体文件库存查询窗体kcpd窗体文件库存盘点窗体mmxg窗体文件密码修改窗体rkcx窗体文件入库查询窗
7、体rkth窗体文件入库退货窗体rkthcx窗体文件入库退货查询窗体rygl窗体文件人员管理窗体sprk窗体文件商品入库窗体spzlgl窗体文件商品资料管理窗体tmdy窗体文件条码打印窗体txl窗体文件通讯录窗体xsck窗体文件销售出库窗体xsckcx窗体文件销售出库查询窗体xsth窗体文件销售退货窗体xsthcx窗体文件销售退货查询窗体xtrz窗体文件系统日志窗体登录窗体文件登录窗体Module1模块公共模块合.exe可执行文件自动识别仓储管理可执行文件合.vbp工程文件自动化识别仓储管理工程3数据库设计3.1数据库概要说明该系统数据库名为db_sell,包括数据表为:供应商概况表、会员信息表
8、、库位表、入库退货表、商品类别表、入库从表、入库主表、商品信息表、出库从表、出库主表、销售退货表、员工信息表。3.2数据表结构设计3.2.1供应商概况表结构图3.1 供应商概况表结构图3.2.2会员信息表结构图3.2 会员信息表结构图3.2.3库位表结构图3.3 库位表结构图3.2.4入库退货表结构图3.4 入库退货表结构图3.2.5商品类别表结构图3.5 商品类别表结构图3.2.6入库从表结构图3.6 入库从表结构图3.2.7商品信息表结构图3.7 商品信息表结构图3.2.8出库从表结构图3.8 出库从表结构图3.2.9销售退货表结构图3.9 销售退货表结构图3.2.10员工信息表结构图3.
9、10 员工信息表结构图3.2.11入库主表结构图3.11 入库主表结构图3.2.12出库主表结构图3.12 出库主表结构图4主要功能窗体及模块的设计4.1主菜单的设计主菜单界面是显示系统主要操作功能的面板。在主菜单窗体中可以将系统中的主要功能都显示在此界面区域中,在该区域中用户可以执行系统的各种功能。同时,开发公司的版权信息和当前的系统日期和时间可以在系统的状态栏中得以显示。系统的主界面的运行效果如图12所示。图4.1 自动识别仓储管理系统主界面4.1.1窗体界面设计窗体界面设计的具体步骤如下:(1)在工程中新建一个窗体,命名为frm_main,设置其Caption属性为“自动化识别仓储管理系
10、统”,MaxButton属性设置为False,Picture属性为指定的图片,StartUpPosition属性为2-屏幕中心。(2)利用VB自带的菜单编辑器给窗体添加菜单。通过ctrl+e的快捷键命令,来打开菜单编辑器,这里通过菜单编辑器设计的菜单如表4.2所示。表4.1 主界面菜单编辑表标题名称快捷键日常业务管理rcyw商品入库m1 Ctr+R销售出库m2Crl+X销售退货m3Ctrl+A入库退货m4Ctrl+B库存管理kcgl库存查询m5Ctrl+C库存盘点m6Ctrl+P仓库设置m7Ctrl+G商品查询统计spcxtj入库查询m8Ctrl+F1入库退货查询m9销售出库查询m10Ctrl
11、+F2销售退货查询m11基本资料管理Jbzlgl商品资料管理m12供应商管理m13Ctrl+Y会员管理m14Ctrl+H人员管理m15本单位信息管理m16系统管理xtgl密码修改m17F1数据备份与恢复m18清空日志m19F2系统日志m20辅助工具fzgj计算器m21记事本m22通讯录m23条码打印m24帮助bz帮助m25F11关于m26F12退出exit(3) 在窗体上添加9个Label控件,将其设置为数组,用于显示系统的主要功能;添加7个label2控件,将其设置为数组,用于显示系统的辅助功能。(4)通过“部件”对话框选中Microsoft Windows Common Controls
12、6.0(SP6)项,将StatusBar控件添加到工具箱中。其中,就是StatusBar控件。右击“属性页”对话框将状态栏设置为3个窗格,分别用于显示版权信息、日期、时间。版权信息通过在“属性页”对话框的“窗格”选项卡中的“文本”文本框中进行设置。日期窗格是通过在“窗格”选项卡中设置“样式”为6-sbrDate。时间窗格是通过设置“样式”为5-sbrTime。设置后的运行效果如图4.2所示。图4.2 状态栏运行效果图4.1.2程序主要代码设计(1)主界面左侧部分主要功能实现动态的图标移动的方法,主要先建立一个picture1图标,然后设置在鼠标移动到不同位置时,设定picture1的位置从而实
13、现图标的移动。以下为实现该功能的主要代码:Private Sub Label1_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, y As Single) Picture1.Left = 240 Select Case Index Case 0 Picture1.Top = 1560 Case 1 Picture1.Top = 2040 Case 2 Picture1.Top = 2550 Case 3 Picture1.Top = 3030 Case 4 Picture1.Top = 3
14、525 Case 5 Picture1.Top = 4020 Case 6 Picture1.Top = 4515 Case 7 Picture1.Top = 5010 Case 8 Picture1.Top = 5525 End Select lbl1.Caption = Label1(Index).CaptionEnd Sub(2)主界面中部辅助工具动态图(图4.3)标的形成和主要功能动态图标的实现方法基本一样。图4.3 辅助功能动态图标运行效果图4.2用户登录设计用户名及密码所在注册表位置:HKEY_CURRENT_USERRegDataUsername及HKEY_CURRENT_USE
15、RRegDataPassword。用户登录主要用于对登录到自动化识别仓储管理系统中的用户进行安全检查,以防止非法用户进入该系统,只有合法的用户才可以登录到系统。验证操作员及其密码主要是通过对注册表中数据的查询,结合If语句判断用户选定的用户名及其输入的密码是否符合注册表中的用户名和密码,如果符合则允许登录,否则提示错误信息。如果错误超过3次,则强行退出该系统。系统用户名为admin初始密码为admin,登录系统成功后可以自行修改初始密码。为了保障帐号和密码的安全性可以使用软件盘的输入方式,只要点击软键盘按钮就会自动弹出一个非常精美的软键盘,通过鼠标点击软键盘上的对应按键即可输入密码和用户名。根
16、据一项调查,发现多数是浏览了含有木马的网站之后,中了木马,目前多数木马都是采用记录键盘输入的办法盗取用户的帐号和密码。此时一旦在任何页面输入自己的用户名密码,就会造成被盗。这样利用软键盘输入密码就避免了键盘的输入方式,最大限度的保证了用户使用的安全性。自动识别仓储管理系统中的登录界面如图4.4所示。图4.4 系统登录运行效果图4.3系统日志设计系统日志函数为reginfo,当系统执行登录,入库,查询等操作时,将会把这些操作信息写入到系统日志.ini中。Reginfo的定义代码为:Public Function RegInfo(myform As Form) As StringDim Intex
17、t As String, TStr As StringOpen (App.Path & 系统日志.ini) For Input As #1Do While Not EOF(1)Line Input #1, IntextTStr = TStr + Intext + Chr(13) + Chr(10)LoopClose #1TStr = TStr + 操作员:admin + + Format(Now, yyyy-mm-dd hh:mm:ss) + & myform.Tag & Chr(13) & Chr(10)Open (App.Path & 系统日志.ini) For Output As #1P
18、rint #1, TStrClose #1End Function该代码必须写到公共模块中,因为后面的很多模块中都要用到reginfo函数来将动作写入到系统日志中。图4.5 系统日志4.4商品资料管理设计所用数据表:商品信息表、商品类别表和库位表。商品资料管理包括商品添加、删除、修改和保存。由于商品信息涉及的字段比较多,这里以列表的形式显示,将添加和修改都通过该窗体来实现。这样可以使整个商品资料管理窗体看起来更加清晰、方便。运行程序时,当选择“基本资料管理”/“商品资料管理”菜单项,将弹出如图4.5所示的“商品资料管理”窗体。图4.5 商品资料管理运行效果图4.4.1商品资料实现关键代码实现商
19、品资料管理的关键代码为:Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.key Case add blnAdd = True tlbState Toolbar1, True For i = 1 To Text1.UBound Text1(i) = Text1(i).Locked = False Next i DataCombo1.Text = : DataCombo2.Text = DataCombo1.Locked = False: DataCombo2.Locke
20、d = False DataCombo1.SetFocus Case modify If Adodc1.Recordset.RecordCount 0 Then blnAdd = False tlbState Toolbar1, True For i = 1 To Text1.UBound Text1(i).Locked = False Next i DataCombo1.Locked = False DataCombo2.Locked = False view_data Else MsgBox 系统没有要修改的数据!, , 提示窗口 End If Case delete If Adodc1.
21、Recordset.RecordCount 0 Then Adodc1.Recordset.Delete Adodc1.Recordset.Update Else MsgBox 系统没有要删除的数据!, , 提示窗口 End If Case save If Text1(1).Text = Then MsgBox 系统不允许商品名称为空!, , 提示窗口 Exit Sub End If If IsNumeric(Text1(4) = False Then MsgBox 请在成本价文本框中输入数字!, , 提示窗口 Exit Sub End If If IsNumeric(Text1(5) = F
22、alse Then MsgBox 请在销售价文本框中输入数字!, , 提示窗口 Exit Sub End If If IsNumeric(Text1(6) = False Then MsgBox 请在库存文本框中输入数字!, , 提示窗口 Exit Sub End If On Error GoTo SaveErr If blnAdd = True Then rs1.Open select * from 商品信息表 where 商品名称= + Text1(1) + and 供应商= + Text1(2) + , cnn, adOpenKeyset If rs1.RecordCount 0 The
23、n MsgBox 此商品已存在!, , 提示窗口 Else cnn.Execute (insert into 商品信息表(商品类别,商品名称,供应商,单位,成本价,销售价,库存数量,条码,存放库位)values( + DataCombo1 + _ , + Text1(1) + , + Text1(2) + , + Text1(3) + , + Text1(4) + , + Text1(5) + , + Text1(6) + , + Text1(7) + , + DataCombo2 + ) Adodc1.Refresh tlbState Toolbar1, False For i = 1 To
24、 Text1.UBound Text1(i).Locked = True Next i DataCombo1.Locked = True: DataCombo2.Locked = True End If rs1.Close Else rs1.Open select * from 商品信息表 where 商品名称= + Text1(1) + and 供应商= + Text1(2) + , cnn, adOpenKeyset If rs1.RecordCount 0 And Text1(1) DataGrid1.Columns(1) And Text1(2) DataGrid1.Columns(2
25、) Then MsgBox 此记录已存在!, , 提示窗口 Else cnn.Execute (update 商品信息表 set 商品类别 = + DataCombo1 + ,商品名称 = + Text1(1) + ,供应商 = + Text1(2) + _ ,单位 = + Text1(3) + ,成本价= + Text1(4) + ,销售价= + Text1(5) + ,库存数量= + Text1(6) + ,条码= + Text1(7) + ,存放库位 = + DataCombo2 + where 商品名称 = + DataGrid1.Columns(1) + _ and 供应商 = +
26、DataGrid1.Columns(2) + ) tlbState Toolbar1, False For i = 1 To Text1.UBound Text1(i).Locked = True Next i DataCombo1.Locked = True: DataCombo2.Locked = True End If Adodc1.Refresh rs1.Close End If Exit SubSaveErr: MsgBox Err.Description Case cancel tlbState Toolbar1, False For i = 1 To Text1.UBound T
27、ext1(i).Locked = True Next i DataCombo1.Locked = True: DataCombo2.Locked = True view_data Case close Unload Me End SelectEnd Sub4.5商品入库设计所用数据库:入库从表,入库主表,商品信息表供应商概况表。商品入库主要完成将所采购商品的信息批量保存到入库表和库存表中。为了提高录入入库商品信息的速度,这里使用了MSFlexGrid表格控件。MSFlexGrid控件可以对表格数据进行显示和操作,具有完全的灵活性,但它不能象DataGrid表格那样在运行时直接对表格中的数据进行
28、编辑操作。如果要对MSFlexGrid表格中的数据进行编辑,必须借用TextBox控件。运行程序,在程序的主窗体中选择“【日常业务管理】”/“商品入库”菜单项,即可进入到“商品入库”程序界面中。在该界面中添加商品的入库信息,单击“登记”按钮,系统将自动添加入库编号,并将光标设置在“供应商名称”文本框中,在该文本框中,按Enter键,即可显示出所有的供应商名称,用户可以选择需要的供应商名称,然后通过Enter键进入下一个文本框,在本程序中完全支持Enter键。当光标进入到“商品名称”文本框中用户按Enter键,将弹出所有的商品信息,用户可以选择需要入库的商品信息,选中之后,将直接添加到入库单中,
29、用户只需输入入库商品的数量信息即可。金额、入库品种、合计数量等都有系统自动运算得出。当用户输入完成要入库的商品信息,单击“保存”按钮,即可将其保存到数据库中,其实现效果如图4.6所示。图4.6 商品入库运行效果图4.5.1实现商品入库关键代码实现该功能的主要代码:Private Sub txt1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyReturn And Index = 0 Then Adodc1.RecordSource = 供应商概况表 where 公司名称 lik
30、e + %+ + txt1(0) + +% or 企业负责人 like + %+ + txt1(0) + +% Adodc1.RecordSource = 供应商信息表 where 供应商全称 like +%+ + txt1(0) + +% Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then DataGrid1.Visible = True DataGrid1.SetFocus Else Adodc1.RecordSource = 供应商信息表 Adodc1.Refresh If Adodc1.Recordset.RecordCount
31、0 Then DataGrid1.Visible = True DataGrid1.SetFocus Else MsgBox 无可选的供应商信息,请首先录入供应商数据!, , 提示窗口 End If End If End If If KeyCode = vbKeyReturn And Index = 1 Then flex1.Col = 1 flex1.Row = 1 flex1.SetFocus End IfEnd SubPrivate Sub txtEdit_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyRe
32、turn And flex1.Col = 1 Then Adodc2.RecordSource = 商品信息表 where 商品条码 like +%+ + txtEdit + +% Adodc2.Refresh If Adodc2.Recordset.RecordCount 0 Then DataGrid2.Visible = True DataGrid2.SetFocus Else Adodc2.RecordSource = 商品信息表 Adodc2.Refresh If Adodc2.Recordset.RecordCount 0 Then DataGrid2.Visible = True
33、 DataGrid2.SetFocus Else MsgBox 无可选的商品信息,请首先录入商品数据!, , 提示窗口 End If End If End If 只有TextBox控件在“数量”单元格时,才使用以下过程 If flex1.Col = 4 Then EditKeyCode flex1, txtEdit, KeyCode, Shift End IfEnd Sub4.6库存查询设计所用数据表:商品信息表。库存查询主要完成库存商品信息的查询。通过SQL语句实现库存商品的查询;其中为了方便用户自定义查询所需内容,将需要查询的字段名称、运算符存放在ComboBox控件中,查询关键字通过Te
34、xtBox控件输入,也可以通过时间DTPicker来设定时间段来查询该段时间的库存信息。另外,为了能够准确地显示查询结果,使用了ADO控件绑定DataGrid控件的方法,将查询结果显示在DataGrid控件中。其实现效果如图4.7所示。图4.7 库存查询运行效果图4.6.1实现库存查询关键代码库存查询功能实现的关键代码:Private Sub Command1_Click()If Check1(0).Value = 0 And Check1(1).Value = 1 ThenIf Combo2.Text = like ThenAdodc1.RecordSource = select * fro
35、m 商品信息表 where & Combo1.Text & like + & Text1.Text & +%Adodc1.RefreshElseAdodc1.RecordSource = select * from 商品信息表 where & Combo1.Text & Combo2.Text & + Text1.Text + Adodc1.RefreshEnd IfEnd IfIf Check1(0).Value = 1 And Check1(1).Value = 0 ThenAdodc1.RecordSource = select * from 商品信息表 where 时间 between
36、 + Chr(35) + Str(DTP1.Value) + Chr(35) + AND + Chr(35) + Str(DTP2.Value) + Chr(35) + Adodc1.RefreshEnd IfIf Check1(0).Value = 1 And Check1(1).Value = 1 ThenIf Combo2.Text = like ThenAdodc1.RecordSource = select * from 商品信息表 where & Combo1.Text & like & + Text1.Text + +%and 时间 between + Chr(35) + Str
37、(DTP1.Value) + Chr(35) + AND + Chr(35) + Str(DTP2.Value) + Chr(35) + Adodc1.RefreshElseAdodc1.RecordSource = select * from 商品信息表 where & Combo1.Text & Combo2.Text & + Text1.Text + and 时间 between + Chr(35) + Str(DTP1.Value) + Chr(35) + AND + Chr(35) + Str(DTP2.Value) + Chr(35) + Adodc1.RefreshEnd IfE
38、nd IfEnd Sub4.7销售出库查询设计所用数据表:出库从表。销售出库查询主要完成销售出库商品信息的查询。通过SQL语句实现销售出库商品的查询;其中为了方便用户自定义查询所需内容,将需要查询的字段名称、运算符存放在ComboBox控件中,查询关键字通过TextBox控件输入,也可以通过时间DTPicker来设定时间段来查询该段时间的库存信息。另外,为了能够准确地显示查询结果,使用了ADO控件绑定DataGrid控件的方法,将查询结果显示在DataGrid控件中。其实现效果如图4.8所示。图4.8 销售出库查询运行效果图4.8销售退货查询设计所用数据表:销售退货表。销售退货查询主要完成销售
39、退货商品信息的查询。通过SQL语句实现销售退货商品的查询;其中为了方便用户自定义查询所需内容,将需要查询的字段名称、运算符存放在ComboBox控件中,查询关键字通过TextBox控件输入,也可以通过时间DTPicker来设定时间段来查询该段时间的库存信息。另外,为了能够准确地显示查询结果,使用了ADO控件绑定DataGrid控件的方法,将查询结果显示在DataGrid控件中。其实现效果如图4.9所示。图4.9 销售退货运行效果图4.9通讯录设计所用数据表:tbS_address。通讯录主要用于记录一些常用联系人的联系方式如固定电话、移动电话、电子邮箱地址和个人网页地址。该通讯录可以增加联系人
40、,删除联系人,修改联系人信息和查询联系人。图4.10 通讯录运行效果图4.10记事本设计记事本用于记录一些东西,打开,保存,一些txt文件格式的文本,同时也具有查询文字的功能。图4.11 记事本运行效果图4.11条码打印设计添加barcodectrl控件,样式选择为2-EAN-13格式条码,在文本框中输入条码号,就可以在barcodectrl中显示出对应该条码号的条形码图。单击该窗体就可打印出该条形码图。图4.12 条形码打印运行效果图4.12供应商信息管理设计所用数据表:供应商概况表。供应商信息管理包括供应商信息添加、删除、修改和保存。由于供应商信息涉及的字段比较多,这里以列表的形式显示,将
41、添加和修改都通过该窗体来实现。这样可以使整个供应商资料管理窗体看起来更加清晰、方便。运行程序时,当选择“基本资料管理”/“供应商管理”菜单项,将弹出如图4.13所示的“供应商管理”窗体。图4.13 供应商管理运行效果图4.13会员管理设计所用数据表:会员信息表。会员信息管理包括会员信息添加、删除、修改和保存。由于会员信息涉及的字段比较多,这里以列表的形式显示,将添加和修改都通过该窗体来实现。这样可以使整个会员资料管理窗体看起来更加清晰、方便。会员信息主要包括会员号,会员名,性别,会员等级,联系电话,消费总额和备注。运行程序时,当选择“基本资料管理”/“会员管理”菜单项,将弹出如图4.14所示的
42、“会员管理”窗体。图4.14 会员信息管理运行效果图4.14本单位信息设计本单位信息主要包括企业简介,经营特色,企业精神,管理原则和用人观念。图4.15本单位信息运行效果图4.15人员管理设计所用数据表:员工信息表。员工信息管理包括员工信息添加、删除、修改和保存。由于员工信息涉及的字段比较多,这里以列表的形式显示,将添加和修改都通过该窗体来实现。这样可以使整个会员资料管理窗体看起来更加清晰、方便。员工信息主要包括员工编号,员工姓名,性别,员工等级,联系电话,薪资,工龄和地址。运行程序时,当选择“基本资料管理”/“员工管理”菜单项,将弹出如图4.16所示的“员工管理”窗体。图4.16 员工管理运
43、行效果图4.16仓库设置设计所用数据表:库位表。仓库设置包括库位信息添加、删除、修改和保存。库位信息主要包括员仓库号,库位名称,仓库面积,责任人,联系电话,利用率和备注。运行程序时,当选择“库存管理”/“仓库设置”菜单项,将弹出如图4.17所示的“仓库设置”窗体。图4.17 仓库设置运行效果图4.17库存盘点设计所用数据表:商品信息表库存盘点是为了精确的计算某段时间的仓库库存状况,以月或年为周期执行清点以便对仓储货品的收发结存等活动进行有效控制,保证仓储货品完好无损、帐物相符,确保生产正常进行规范公司物料的盘点作业.的库存管理软件盘点并应用到仓库管理中,这大大的方便了仓库管理效率。库存盘点窗体
44、包括查询,盘点和清空。查询可以通过商品条码,商品规格,商品名称和供应商查询到符合该条件的商品。点击盘点,输入盘点数量即可进行盘点。清空就可以清空盘点记录。运行程序时,当选择“库存管理”/“库存盘点”菜单项,将弹出如图4.18所示的“库存盘点”窗体。图4.18 库存盘点运行效果图4.18入库退货设计所用数据表:入库退货表。入库退货包括退货、保存、取消和关闭。入库退货主要包括商品条码、商品名、退货原因、数量、规格和供应商。运行程序时,当选择“日常业务管理”/“入库退货”菜单项,将弹出如图4.19所示的“入库退货”窗体图4.19 入库退货运行效果图4.19销售出库设计所用数据表:销售出库表。这里销售
45、出库是指从仓库到超市货架的出货过程。包括出库,保存,取消和关闭选项。可以用扫描输入商品条码也可以手工输入商品条码,所包含的信息分别为商品条码、商品名、价格、数量、规格和供应商。运行程序时,当选择“日常业务管理”/“销售出库”菜单项,将弹出如图4.20所示的“销售出库”窗体图4.20 销售出库运行效果图4.20销售退货设计所用数据库:销售退货表。当销售出的货物不能满足消费者的正常需求时,消费者可能要求退货。退回来的货物通过销售退货重新入库,然后与供应商联系进行退货。该窗体包括退货、保存、取消和关闭按钮选项。商品条码可以通过扫描仪输入,但是如果使用过称中条码磨损造成不能扫描出其条码可以通过条码手动
46、输入方式来执行销售退货功能。该窗体包含的信息为商品条码、商品名、退货原因、数量、规格和供应商。运行程序时,当选择“日常业务管理”/“销售吐火”菜单项,将弹出如图4.21所示的“销售退货”窗体。4.21 销售退货效果运行图4.21密码修改设计用户名及密码所在注册表位置:HKEY_CURRENT_USERRegDataUsername及HKEY_CURRENT_USERRegDataPassword。当用户初次登陆时或者感觉当前密码安全性不高,就有了密码修改的要求。修改密码时要求先输入原密码,回车键判断密码是否正确,若正确则执行下一步操作,输入新密码,然后确认密码若是新密码两次输入都相同,点击确认
47、修改密码就成功。如图4.22为密码修改窗体。图4.22 密码修改运行效果图4.22入库查询所用数据表:商品入库。入库查询主要完成入库商品信息的查询。通过SQL语句实现入库商品的查询;其中为了方便用户自定义查询所需内容,将需要查询的字段名称、运算符存放在ComboBox控件中,查询关键字通过TextBox控件输入,也可以通过时间DTPicker来设定时间段来查询该段时间的入库信息。另外,为了能够准确地显示查询结果,使用了ADO控件绑定DataGrid控件的方法,将查询结果显示在DataGrid控件中。其实现效果如图4.23所示。图4.23 商品入库查询运行效果图4.23入库退货查询所用数据表:入
48、库退货表。入库退货查询主要完成入库退货商品信息的查询。通过SQL语句实现入库退货商品的查询;其中为了方便用户自定义查询所需内容,将需要查询的字段名称、运算符存放在ComboBox控件中,查询关键字通过TextBox控件输入,也可以通过时间DTPicker来设定时间段来查询该段时间的退货信息。另外,为了能够准确地显示查询结果,使用了ADO控件绑定DataGrid控件的方法,将查询结果显示在DataGrid控件中。其实现效果如图4.24所示。图4.24 入库退货查询运行效果图5软件后期系统测试软件系统测试是为了发现应用系统软件的错误而执行程序的过程,或者说,软件系统测试是根据系统软件开发各阶段的规
49、格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。5.1 软件界面测试 对软件界面进行测试,检查程序运行时,界面中是否有错别字,表述不妥的标题、标签,或一些动态显示的画面是否正常。经测试,一切正常。5.2 数据录入测试数据录入测试,是检查前台录入的数据类型和长度,是否符合后台设计。目的是尽量防止录入非法数据,从而影响系统的正常运行。在设计之初,就已考虑到录入非法数据的情况,所以,在设计数据库时,就已经规定了输入的数据长度和是否为空等。经过测试,一切数据录入正常,保证了数据的安全性和稳定性。5.3 模块功能测试模块功
50、能测试,就是为了检查在模块中有没有不能实现或实现有问题的功能,或是运行是否稳定以及能否反复使用。在测试过程中出现了如下问题:(1)供应商管理中进行修改资料是会出现当试图设置当前行时发生错误;(2)密码操作时使用tab键切换会使修改密码会破译密码;(3)当输入完密码之后回车,会有“咚”的一声响;(4)系统日志不能显示用户名。解决方法为:(1)由于数据格式的错误导致提示错误,格式修改后能正常运行;(2)把每个控件的TABSTOP都设置成FALSE,修改后不能使用tab键就可以避免密码的非法操作;(3)TEXT不允许多行显示,如果设置成允许多行显示就不会冬的响了。主要是回车符得存在是得在不允许多行显示的情况下发出报警,在Text的Keypress事件里面加入这样一句If KeyAscii = 13 Then KeyAscii = 0,成功解决问题;(4)去掉op+ 在操作员后面加上的admin。在设计完成后,经过上述测试修改基本上需求功能都
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水库进口段施工方案模板
- 矿产资源开发与区域经济发展-石墨滑石考核试卷
- 木结构防火施工方案
- 粮食批发商市场规范化管理与监管策略研究考核试卷
- 解答证券从业资格证考试疑难试题及答案
- 2023年中国铁路上海局集团有限公司招聘高等职业院校毕业生3163人(二)笔试参考题库附带答案详解
- 2024项目管理考试复习要点试题及答案
- 硫酸铜在金属腐蚀中的应用考核试卷
- 2023年中国能建陕西院智能配网公司招聘变电电气设计岗位工作人员笔试参考题库附带答案详解
- 2023年中国联合网络通信有限公司会昌分公司公开招聘工作人员笔试参考题库附带答案详解
- 酸枣仁汤的临床应用研究
- 河北省廊坊市安次区2023-2024学年八年级下学期4月期中物理试题
- 服装供货服务方案
- 2015年高考真题新课标-英语II卷真题及答案
- 小学实践活动教学设计案例
- 主动邀请患者参与医疗安全
- 2024年医院重症专科护士培训考试题库(含答案)
- 2024年天津市武清区国有资产经营投资有限公司招聘笔试参考题库附带答案详解
- 《动物生理学》课程教学大纲
- 社会稳定风险评估 投标方案(技术方案)
- 高档KTV装修工程施工组织设计方案
评论
0/150
提交评论