VB图书销售管理系统.docx
- 文档编号:3353889
- 上传时间:2022-11-22
- 格式:DOCX
- 页数:16
- 大小:52.17KB
VB图书销售管理系统.docx
《VB图书销售管理系统.docx》由会员分享,可在线阅读,更多相关《VB图书销售管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
VB图书销售管理系统
XXXXX
《VB程序设计》课程设计报告
题目:
图书销售管理系统
所在院系:
信息技术学院
学生:
XX
指导老师:
XX
日期:
二XXXXXXX
摘要:
图书作为一种关系到人们工作、学习及生活等各个方面的特殊商品,在人们的生活水平日益提高的同时,它的地位也越来越重要,然而图书品种繁多,销售模式特殊,随着信息化的快速发展和业务量的不断增大,传统的手工管理手段已经无法适应图书销售业的发展,如今,图书销售业需要实现销售业务的计算机管理,迫切需要开发出相应的销售管理软件,从而加强对图书销售的管理,通过计算机来完成大量本来由工作人员手工完成的工作,真正达到合理和充分利用现有资源,减轻工作压力的效果。
因此,开发一个图书销售管理系统是很有必要的,除此之外,图书销售管理系统也有着广泛的市场前景和实际的应用价值。
经过分析,使用微软公司的Visual开发工具及Access数据库,设计了图书销售管理系统。
关键字:
图书销售管理系统,数据库,Visual
Abstract:
Asaparticularcommodity,booksaffectpeople’swork,studyandlifeandsothesametime,people’slivingstandardsarerisingquickly,now,itplaysamoreandmoreimportantrole,however,awidevarietyofbooksandspecialsalesmode,Withtherapiddevelopmentofinformationtechnologyandthegrowingvolumeofbusiness,thetraditionalmanagementtoolshavenotadaptedthedevelopmentofthebooksellingindustry,today,industrysalesofbooksneedtoachievesalesofcomputermanagement.itisurgenttodeveloprelevantsalesmanagementsoftware,sothatpeoplecanstrengthentheBooksalesmanagement,usingcomputerstofinishthelargeamountofworkwhichwasfinishedbyhandbefore,peoplecanreallymakefulluseofexistingresourcesandalleviatethepressureofwork..Asaresult,itisverynecessarytodevelopaBookSellingManagementSystem.,inaddition,thebooksalesmanagementsystemsalsohavebroadmarketprospectsandpracticalapplication.
Afteranalysis,usingMicrosoft'sVisualandAccessdatabasedevelopmenttooltodesignthebooksalesmanagementsystem..
Keywords:
BookSellingManagementSystem,database,Visual
一:
开发环境介绍:
VisualBasic简介
VisualBasic简称VB,是Microsoft公司推出的一种Windows应用程序开发工具。
是当今世界上使用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。
早在1991年,为了简化Windows应用程序的开发,微软公司推出了Visual,如今的最新版本是VisualBasic。
VisualBasic集成开发环境包含标题栏、菜单栏、工具栏、窗体设计器窗口、工程资源管理器窗口、工程窗口、窗体布局窗口和属性窗口。
VisualBasic的特点有:
可视化的设计平台、面向对象的设计方法、事件驱动的编程机制、结构化的设计语言、充分利用Windows资源、开放的数据库功能与网络支持。
二:
系统需求分析与功能模块
2.1系统需求分析
一般的图书销售管理系统包括,进货管理,销售管理,库存管理,退货管理,销售统计,信息维护等功能。
以下介绍一下销售管理系统的一些必备功能,每个功能由若干相关的子模块构成。
进货管理
包括进书录入及查询
销售管理
主要对销售的情况进行记录及浏览销售情况
库存管理
主要对库存量进行录入与查询。
退货管理
对顾客退回来的书籍进行管理,包括退货录入及查询
销售统计
主要是对销售业绩进行统计,以报表的形式显示销售业绩
信息维护
主要包括图书信息维护,人员信息维护及用户信息维护,其中只有管理员可以对人员信息进行维护,管理员可以更改所有用户的信息,用户只能修改个人信息。
系统的功能可用如图2-1所示框图表示。
图2-1
数据库设计
本系统的数据库采用MicrosoftAccess2003
建立Access数据库
启动Access2003,选择文件,新建,空数据库,如图2-2所示
图2-2
2.3.2创建表
在上面的基础上,选择主菜单中的插入->表格,根据要求设计相应的表格,本系统中设计的表格如下所示:
tb_login(用户登录信息表)
tb_buybooks(图书进货录入表)
tb_personnelinfo(人员信息维护表)
tb_sale(图书销售表)
tb_store(图书库存表)
tb_withdraw(图书退货表)
三:
系统具体实现
欢迎界面
.在此界面中引用了一个第三方控件(ccrpprg6),它是一个进度条控件。
首先要加载此控件,具体方法是把压缩包解压缩,然后在工具箱的空白处单击鼠标右键,从弹出的快捷菜单中启动"部件"窗口,如图3-1所示。
图3-1
点击"浏览"按钮,从存放ccrpProgressBar控件的文件夹中找到文件。
点击"应用"后ccrpProgressBar控件就添加到工具箱中了。
.向窗体中添加一个ccrpProgressBar控件和一个Timer控件
Timer控件的Interval值设置为100,与ccrpProgressBar控件的默认值一致。
.在timer1的timer事件中添加如下代码
Ifi=100Then
=False'定时器停止工作
Else’i不为100则进度条向前进
=i
i=i+2
EndIf
.使本窗体透明,新建一个模块Module1,添加如下代码
PublicDeclareFunctionSetLayeredWindowAttributesLib"user32"(ByValhwndAsLong,ByValcrKeyAsLong,ByValbAlphaAsByte,ByValdwFlagsAsLong)AsLong
’AnimateWindow是一个窗口打开和关闭时产生动画效果的新函数,因为是一个新的函数,所以在此定义
PublicConstWS_EX_LAYERED=&H80000
PublicConstGWL_EXSTYLE=(-20)
PublicConstLWA_ALPHA=&H2’表示把窗体设置成半透明样式
PublicConstLWA_COLORKEY=&H1’不显示窗体中的透明色
PublicDeclareFunctionGetWindowLongLib"user32"Alias"GetWindowLongA"(ByValhwndAsLong,ByValnIndexAsLong)AsLong
PublicDeclareFunctionSetWindowLongLib"user32"Alias"SetWindowLongA"(ByValhwndAsLong,ByValnIndexAsLong,ByValdwNewLongAsLong)AsLong
在form的load事件中加入如下代码
=True
=100'定时器开始工作
=True
rtn=GetWindowLong,GWL_EXSTYLE)'取窗口的原先样式
rtn=rtnOrWS_EX_LAYERED
'使窗体添加上新的样式WS_EX_LAYERED
SetWindowLong,GWL_EXSTYLE,rtn'把新的样式赋给窗体
SetLayeredWindowAttributes,0,150,LWA_ALPHA
'把窗体设置成半透明样式,第二个参数表示透明程度取值范围0--255,为0时就是一个全透明的窗体了
系统登录
.在窗体上加个adodc1控件,登录的主要代码为
DimiAsInteger
i=1To控件名.Text=""Then’如果控件中的内容为空,则显示提示
MsgBox"请选择用户类型!
",vbOKOnly+vbInformation,"注意"
ElseIf="userkind"))And(Trim="name"))And(Trim="password"))Then’判断用户名与密码是否相符
UnloadMe
ExitSub
Else
MsgBox"无效的密码,请重试!
","登陆"
ExitSub
EndIf
Next
.若当前用户是新用户,则可以单击新用户注册进行注册,主要代码如下:
.在Module1中加入如下代码:
OptionExplicit
PublicconAs
PublicrstAs
PublicSubOpenDataBase()
Setcon=New
="Provider=SecurityInfo=False"
Setrst=New
EndSub
.在caption属性为”新用户注册”的按纽的click事件中添加如下形式的代码
CallOpenDataBase
"tb_login",con,adOpenStatic,adLockOptimistic,-1
If=""Then
…………提示不能为空
ElseIf=""Then
…………提示不能为空
Else
Fori=1To
If=("name").ValueThen
MsgBox"该用户已存在,请重新输入用户名!
",vbOKOnly+vbExclamation,"用户"
ExitSub
Else
EndIf
NextI’判断新的用户名是否与已存在的用户重名
("字段名")=
MsgBox"新用户添加成功!
",vbOKOnly+vbInformation,"提示"
UnloadMe
EndIf
主界面
.选择VBIDE中的菜单栏中的工具->菜单编辑器,进行如下(图3-2)设置
图3-2
.加Toolbar控件,单击如图3-3中的 添加6个按纽,并分别设置其标题及关键字,对应的与中的数值要一致。
图3-3
在toolbar1的buttonclick事件中加入如下形式代码
SelectCase
Case"关键字"
语句
EndSelect
.加ImageList控件,然后右击打开如图3-4的属性页,选择图像,单击
,添加6个图片
图3-4
.在图3-3中选择通用,然后设置其图像列表为ImageList1
即
.添加StatusBar,timer控件
在statusbar的属性页中,选择窗格,然后单击,插入相应的窗格
在timer1的timer事件中加入语句
(3).Text=Time’显示当前系统时间
在form的load事件中的主要代码如下
(1).Text="欢迎使用图书销售管理系统!
"
(2).Text=Format(Date,"dddddd")
’以完整日期表示法显示当前系统中的日期
If="0"Then
=False
‘如果登录的用户为一般用户则该用户不能对人员信息进行维护
进货管理
.进书录入
.在确定按纽的click事件中加入如下形式代码
CallOpenDataBase
"表名",con,adOpenStatic,adLockOptimistic,-1
("表中字段名")=
MsgBox"新书添加成功!
",vbOKOnly+vbInformation,"提示”
.在form的load事件中加入如下语句
=Date’使Dtpicker1的当前值为系统日期
.进书查询
在“查询“按纽的click事件中添加如下代码
DimsqlAsString
sql="select*fromtb_buybookswhere"
If=""Then
MsgBox"请选择图书进货日期!
",vbOKOnly+vbExclamation
ExitSub
Else
sql=sql&"ISBN='"&Trim&"'"
EndIf
=sql
’查询指定日期的进书情况
销售管理
.图书销售录入(代码同进书录入的代码)
.图书销售浏览
.在from的load事件中添加如下代码
CallOpenDataBase
"tb_sale",con,adOpenStatic,adLockOptimistic,-1
.在通用代码段中添加如下形式代码
PublicSubviewdatas()
OnErrorResumeNext
=("字段名”)Value’把数据库中的字段值赋给相应的控件
EndSub
.在”第一本”按纽的click事件中加入如下代码
’移到表中的第一条记录
Callviewdatas
.在”上一本”按纽的click事件中加入如下代码
IfThen’判断是否是第一条记录
MsgBox"已经是第一条记录!
",vbOKOnly+vbInformation
Else
’向前移一条记录
Callviewdatas
EndIf
.在”下一本”按纽的click事件中加入如下代码
IfThen’判断是否是最后一条记录
MsgBox"已经是最后一条记录!
",vbOKOnly+vbInformation
Else
’向后移一条记录
Callviewdatas
EndIf
.在”最末本”按纽的click事件中加入如下代码
’移到最后一条记录
Callviewdatas
库存管理
.库存录入(代码同进书录入的代码)
.库存查询
.在“查询“按纽的click事件中添加如下代码
DimtxtSQLAsString
txtSQL="select*fromtb_store"
If=""Then
sMeg="请输入图书编号!
"
MsgBoxsMeg,vbOKOnly+vbExclamation,"警告"
ExitSub
Else
txtSQL=txtSQL&"whereISBN='"&Trim&"'"
EndIf
=txtSQL’重新给数据源赋值’
.Adodc1的记录源设置如图3-5所示:
图3-5
退货管理
.退货录入(代码同进书录入的代码)
.退货查询(同库存查询)
销售统计
.图书销售业绩报表
.选择VBIDE的菜单栏中的工程->添加Datareport,添加一个数据报表,名称使用默认的Datareport1。
.设定Datareport对象的DataSource属性为Environment1。
.设定Datareport对象的DataMember属性为Command1。
.右击设计器,在弹出的快捷菜单中单击“检索结构”选项。
.向相应的节添加相应的控件。
报表Datareport1的设计界面如图3-6所示。
图3-6
在主窗体的菜单栏中选择销售统计->图书销售业绩报表,加入语句
信息维护
.图书信息维护(同图书销售浏览)
.人员信息维护
添加一些常用按纽之后,然后在人员信息维护中加一个(CommonDialog)按纽,
在“浏览图片”的click事件中添加如下代码
With
.DialogTitle="选择要导入的图片"
.Filter="选择图片类型|*.jpg|*.bmp|*.bmp|*.gif|*.*|*.jpg"
.ShowOpen
.InitDir=
=LoadPictureWith
.用户信息维护
在Form的load事件中加入如下代码
If="0"Then’判断当前使用者是管理员还是一般用户
=
’若为一般用户则该用户名赋值给,否则,则把所有用户名都加到Combo1中
Else
Sets=New
DimstrAsString
str="provider=source="&&"\;persistsecurityinfo=false"
str
Setc=New
"select*fromtb_login",str,1,1
WhileNot
("name").Value)
Wend
EndIf
在“确定”按纽的click事件中加入如下代码
CallOpenDataBase
"tb_login",con,adOpenStatic,adLockOptimistic,-1
="selectpasswordfromtb_loginwherename="
If<>("password").ValueThen
’判断输入的原密码是否与数据库中的相同
MsgBox"您输入的原密码不正确,请重新输入!
",vbOKOnly+vbInformation,"提示"
Else
("password")=
MsgBox"密码修改成功!
",vbOKOnly+vbInformation,"提示"
UnloadMe
EndIf
四:
调试过程
.系统运行时的第一个界面如图4-1所示
图4-1
.然后进入登录界面,如图4-2所示
图4-2
.用户正确登录之后则可以进入主界面,主界面如图4-3所示
图4-3
.若该用户第一次使用本系统,则可以选择“新用户注册“来进行注册,如图4-4所示
图4-4
.新注册用户的用户名不能与数据库中已经存在的用户重名,运行效果如图4-5所示
图4-5
.运行时单击主界面中的Toolbar中的“进货”按纽或菜单栏中的进货管理->进书录入则运行界面如图4-6所示
图4-6
.单击主界面的菜单栏中的进货管理->进书查询,则运行界面如图4-7所示
图4-7
.单击主界面的菜单栏中的销售管理->图书销售浏览,则运行界面如图4-8所示
图4-8
.单击主界面的菜单栏中的库存管理->库存查询,则运行界面如图4-9所示
图4-9
.单击主界面的菜单栏中的销售统计?
图书销售报表,则运行界面如图4-10所示
图4-10
.单击主界面的菜单栏中的信息维护->人员信息维护,则运行界面如图4-11所示
图4-11
.单击主界面的菜单栏中的信息维护->用户信息维护,则运行界面如图4-12所示
图4-12
.单击主界面的菜单栏中的帮助->关于,则运行界面如图4-13所示
图4-13
五:
总结
通过本次实验,了解了做一个系统的大概步骤。
首先,应该确定该系统要实现的功能,以功能为目标,逐步细化;其次,在做的过程中也应该考虑到界面设计的问题,界面是软件直接与人打交道的主要途径,因此,应根据实际情况设计相应的界面,当系统中有多个模块时,应尽量使各个模块的界面风格保持一致;最后,添加代码,不断地对程序进行调试,达到最终目标。
在设计时也会存在一些细节上的问题,例如,在用户登录界面中,首先要用鼠标把光标移到用户名后对应的编辑框中,然后在键盘上输入用户名,接着再次重复以上操作输入密码,这样让用户频繁的在鼠标与键盘之间来回变换,会使用户感觉到疲劳,对系统产生反感,因此,在设计的过程中应尽量避免出现此现象。
在自己认为系统做好了之后,然后换位思考一下(把自己当成各种阶层的用户),会发现很多问题,比如说,提示信息不足,导致用户不知道某些事情是否已经完成了等等。
六:
参考文献
[1]刘瑞新,汪远征,VisualBasic程序设计教程,北京:
机械工业出版社,
[2]张翼英,VisualBasic课程设计,北京:
清华大学出版社,
[3]龙马工作室,新编VisualBasic程序设计从入门到精通,北京:
人民邮电出版社,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 图书 销售 管理 系统