VB图书销售管理系统_第1页
VB图书销售管理系统_第2页
VB图书销售管理系统_第3页
VB图书销售管理系统_第4页
VB图书销售管理系统_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、XXXXXVB程序设计课程设计报告题目:图书销售管理系统所在院系:信息技术学院学 生: XX指导老师: XX日 期:二XXXXXXX摘 要:图书作为一种关系到人们工作、学习及生活等各个方面的特殊商品,在人们的生活水平日益提高的同时,它的地位也越来越重要, 然而图书品种繁多,销售模式特殊,随着信息化的快速发展和业务量的不断增大,传统的手工管理手段已经无法适应图书销售业的发展,如今,图书销售业需要实现销售业务的计算机管理,迫切需要开发出相应的销售管理软件,从而加强对图书销售的管理,通过计算机来完成大量本来由工作人员手工完成的工作,真正达到合理和充分利用现有资源,减轻工作压力的效果。因此, 开发一个

2、图书销售管理系统是很有必要的,除此之外,图书销售管理系统也有着广泛的市场前景和实际的应用价值。经过分析,使用微软公司的Visual Basic6.0开发工具及Access数据库,设计了图书销售管理系统。 关键字:图书销售管理系统,数据库,Visual Basic6.0 Abstract: As a particular commodity,books affect peoples work , study and life and so on.At the same time , peoples living standards are rising quickly, now , it pla

3、ys a more and more important role, however, a wide variety of books and special sales mode, With the rapid development of information technology and the growing volume of business, the traditional management tools have not adapted the development of the bookselling industry, today, industry sales of

4、 books need to achieve sales of computer management. it is urgent to develop relevant sales management software , so that people can strengthen the Book sales management, using computers to finish the large amount of work which was finished by hand before ,people can really make full use of existing

5、 resources and alleviate the pressure of work. As a result, it is very necessary to develop a Book Selling Management System., in addition, the book sales management systems also have broad market prospects and practical application. After analysis, using Microsofts Visual Basic6.0 and Access databa

6、se development tool to design the book sales management system.Key words: Book Selling Management System, database, Visual Basic6.0一:开发环境介绍: 1.1 Visual Basic简介Visual Basic简称VB,是Microsoft公司推出的一种 Windows应用程序开发工具。是当今世界上使用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。 早在1991年,为了简化Windows应用程序的开发,微软公司推出了Visual Basic1.0

7、,如今的最新版本是Visual Basic 6.0。Visual Basic 6.0集成开发环境包含标题栏、菜单栏、工具栏、窗体设计器窗口、工程资源管理器窗口、工程窗口、窗体布局窗口和属性窗口。Visual Basic 6.0 的特点有:可视化的设计平台、面向对象的设计方法、事件驱动的编程机制、结构化的设计语言、充分利用Windows资源、开放的数据库功能与网络支持。 二:系统需求分析与功能模块2.1 系统需求分析一般的图书销售管理系统包括,进货管理,销售管理,库存管理,退货管理,销售统计,信息维护等功能。以下介绍一下销售管理系统的一些必备功能,每个功能由若干相关的子模块构成。 进货管理 包括

8、进书录入及查询 销售管理 主要对销售的情况进行记录及浏览销售情况 库存管理 主要对库存量进行录入与查询。 退货管理 对顾客退回来的书籍进行管理,包括退货录入及查询 销售统计 主要是对销售业绩进行统计,以报表的形式显示销售业绩 信息维护 主要包括图书信息维护,人员信息维护及用户信息维护,其中只有管理员可以对人员信息进行维护,管理员可以更改所有用户的信息,用户只能修改个人信息。2.2 系统的功能可用如图2-1所示框图表示。系统登陆图书销售管理系统进货管理销售管理库存管理退货管理销售统计信息维护 图2-1 2.3 数据库设计 本系统的数据库采用 Microsoft Access 2003 2.3.1

9、 建立ccess 数据库 启动ccess 2003,选择文件,新建,空数据库(books_sale.mdb),如图2-2所示 图2-2 2.3.2 创建表在上面的基础上,选择主菜单中的插入-表格,根据要求设计相应的表格,本系统中设计的表格如下所示: tb_login (用户登录信息表) tb_buybooks(图书进货录入表) tb_personnelinfo(人员信息维护表) tb_sale (图书销售表) tb_store(图书库存表) tb_withdraw(图书退货表)三:系统具体实现3.1 欢迎界面 在此界面中引用了一个第三方控件(ccrpprg6),它是一个进度条控件。首先要加载此

10、控件,具体方法是把压缩包ccrpprg6.zip解压缩,然后在工具箱的空白处单击鼠标右键,从弹出的快捷菜单中启动部件窗口,如图3-1所示。 图3-1点击浏览按钮,从存放ccrpProgressBar控件的文件夹中找到ccrpprg.ocx文件。点击应用后ccrpProgressBar控件就添加到工具箱中了。向窗体中添加一个ccrpProgressBar控件和一个Timer控件Timer控件的Interval值设置为100,与ccrpProgressBar控件的默认值一致。在timer1的timer事件中添加如下代码If i = 100 Then Frm_before.Hide Timer1.E

11、nabled = False 定时器停止工作 Frm_login.ShowElse i 不为100则进度条向前进 ccrpProgressBar1.Value = i i = i + 2End If. 使本窗体透明,新建一个模块Module1,添加如下代码Public Declare Function SetLayeredWindowAttributes Lib user32 (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long AnimateWindow是一

12、个窗口打开和关闭时产生动画效果的新函数,因为是一个新的函数, 所以在此定义Public Const WS_EX_LAYERED = &H80000Public Const GWL_EXSTYLE = (-20)Public Const LWA_ALPHA = &H2 表示把窗体设置成半透明样式 Public Const LWA_COLORKEY = &H1 不显示窗体中的透明色 Public Declare Function GetWindowLong Lib user32 Alias GetWindowLongA (ByVal hwnd As Long, ByVal nIndex As Lo

13、ng) As LongPublic Declare Function SetWindowLong Lib user32 Alias SetWindowLongA (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long在form的load 事件中加入如下代码Timer1.Enabled = TrueTimer1.Interval = 100 定时器开始工作Frm_before.Visible = Truertn = GetWindowLong(Me.hwnd, GWL_EXSTYLE) 取窗口的原先样

14、式rtn = rtn Or WS_EX_LAYERED 使窗体添加上新的样式WS_EX_LAYEREDSetWindowLong Me.hwnd, GWL_EXSTYLE, rtn 把新的样式赋给窗体SetLayeredWindowAttributes Me.hwnd, 0, 150, LWA_ALPHA 把窗体设置成半透明样式,第二个参数表示透明程度取值范围0 -255, 为0时就是一个全透明的窗体了3.2 系统登录. 在窗体上加个adodc1控件,登录的主要代码为Dim i As IntegerAdodc1.RefreshAdodc1.Recordset.MoveLastAdodc1.Re

15、cordset.MoveFirstFor i = 1 To Adodc1.Recordset.RecordCountIf 控件名.Text = Then 如果控件中的内容为空,则显示提示 MsgBox 请选择用户类型!, vbOKOnly + vbInformation, 注意ElseIf (Combo1.Text = Adodc1.Recordset.Fields(userkind) And (Trim(Text1.Text) =Adodc1.Recordset.Fields(name)And(Trim(Text2.Text)=Adodc1.Recordset.Fields(password

16、) Then 判断用户名与密码是否相符 Frm_main.Show Unload Me Exit SubElse MsgBox 无效的密码,请重试!, 登陆 Exit SubEnd IfNext若当前用户是新用户,则可以单击新用户注册进行注册,主要代码如下:.在Module1中加入如下代码:Option ExplicitPublic con As ADODB.ConnectionPublic rst As ADODB.RecordsetPublic Sub OpenDataBase()Set con = New ADODB.Connectioncon.ConnectionString=Prov

17、ider=Microsoft.Jet.OLEDB.4.0;DataSource=books_sale.mdb;Persist Security Info=FalseSet rst = New ADODB.Recordsetcon.OpenEnd Sub在caption属性为”新用户注册”的按纽的click事件中添加如下形式的代码Call OpenDataBase rst.Open tb_login, con, adOpenStatic, adLockOptimistic, -1 If Text1.Text = Then 提示不能为空 ElseIf Text2.Text = Then 提示不能为

18、空 Else For i = 1 To rst.RecordCount If Text1.Text = rst.Fields(name).Value Then MsgBox 该用户已存在,请重新输入用户名!, vbOKOnly + vbExclamation, 用户 Exit Sub Else rst.MoveNext End If Next I 判断新的用户名是否与已存在的用户重名 rst.AddNew rst.Fields(字段名) = Text.Text rst.Update rst.Requery rst.Close MsgBox 新用户添加成功!, vbOKOnly + vbInfo

19、rmation, 提示 Unload Me End If3.3 主界面选择VB IDE中的菜单栏中的工具菜单编辑器,进行如下(图3-2)设置 图3-2加oolbar控件,单击如图3-3中的添加6个按纽,并分别设置其标题及关键字,对应的 与中的数值要一致。 图3-3在toolbar1的buttonclick事件中加入如下形式代码Select Case Button.KeyCase 关键字语句End Select加ImageList控件,然后右击打开如图3-4的属性页,选择图像,单击,添加个图片 图3-4在图3-3中选择通用,然后设置其图像列表为ImageList1即添加StatusBar,tim

20、er控件 在statusbar的属性页中,选择窗格,然后单击,插入相应的窗格 在timer1的timer事件中加入语句StatusBar1.Panels(3).Text = Time 显示当前系统时间在form的load事件中的主要代码如下StatusBar1.Panels(1).Text = 欢迎使用图书销售管理系统!StatusBar1.Panels(2).Text = Format(Date, dddddd) 以完整日期表示法显示当前系统中的日期If Frm_login.Combo1.Text = 0 Then Me.personnelim.Enabled = False如果登录的用户为

21、一般用户则该用户不能对人员信息进行维护3.4 进货管理进书录入在确定按纽的click事件中加入如下形式代码Call OpenDataBase rst.Open 表名, con, adOpenStatic, adLockOptimistic, -1 rst.AddNew rst.Fields(表中字段名) = Text1.Text rst.Update rst.Requery rst.Close MsgBox 新书添加成功!, vbOKOnly + vbInformation, 提 示”在form 的load 事件中加入如下语句DTPicker1.Value = Date 使Dtpicker1的

22、当前值为系统日期进书查询 在“查询“按纽的click 事件中添加如下代码 Dim sql As Stringsql = select * from tb_buybooks whereIf Combo1.Text = ThenMsgBox 请选择图书进货日期!, vbOKOnly + vbExclamationCombo1.SetFocusExit SubElsesql = sql & ISBN = & Trim(Combo1.Text) & End IfAdodc1.RecordSource = sqlAdodc1.Refresh 查询指定日期的进书情况 3.5 销售管理图书销售录入(代码同进

23、书录入的代码)图书销售浏览 . 在from的load 事件中添加如下代码 Call OpenDataBase rst.Open tb_sale, con, adOpenStatic, adLockOptimistic, -1.在通用代码段中添加如下形式代码Public Sub viewdatas()On Error Resume NextText.Text = rst.Fields(字段名”)Value 把数据库中的字段值赋给相应的控件End Sub.在”第一本”按纽的click事件中加入如下代码 rst.MoveFirst 移到表中的第一条记录Call viewdatas. 在”上一本”按纽

24、的click事件中加入如下代码 If rst.BOF Then 判断是否是第一条记录MsgBox 已经是第一条记录!, vbOKOnly + vbInformationElserst.MovePrevious 向前移一条记录Call viewdatasEnd If. 在”下一本”按纽的click事件中加入如下代码 If rst.EOF Then 判断是否是最后一条记录MsgBox 已经是最后一条记录!, vbOKOnly + vbInformationElserst.MoveNext 向后移一条记录Call viewdatasEnd If. 在”最末本”按纽的click事件中加入如下代码 rs

25、t.MoveLast 移到最后一条记录Call viewdatas3.6 库存管理库存录入 (代码同进书录入的代码)库存查询 在“查询“按纽的click事件中添加如下代码Dim txtSQL As String txtSQL = select * from tb_store If Text7.Text = Then sMeg = 请输入图书编号! MsgBox sMeg, vbOKOnly + vbExclamation, 警告 Text7.SetFocus Exit Sub Else txtSQL = txtSQL & where ISBN = & Trim(Text7.Text) & En

26、d If Adodc1.RecordSource = txtSQL 重新给数据源赋值 Adodc1.Refresh Adodc1的记录源设置如图3-5所示: 图3-53.7退货管理退货录入 (代码同进书录入的代码)退货查询 (同库存查询)3.8 销售统计图书销售业绩报表 .选择VB IDE 的菜单栏中的工程 添加Data report,添加一个数据报表,名称使用默认的Datareport1。 .设定 Datareport对象的DataSource属性为Environment1。 .设定Datareport对象的DataMember属性为 Command1。 .右击设计器,在弹出的快捷菜单中单击

27、“检索结构”选项。 .向相应的节添加相应的控件。报表Datareport1的设计界面如图3-6 所示。 图3-6在主窗体的菜单栏中选择销售统计-图书销售业绩报表,加入语句DataReport1.Show3.9信息维护图书信息维护(同图书销售浏览)人员信息维护添加一些常用按纽之后,然后在人员信息维护中加一个(CommonDialog)按纽,在“浏览图片”的click事件中添加如下代码With Me.CommonDialog1.DialogTitle = 选择要导入的图片.Filter = 选择图片类型|*.jpg|*.bmp|*.bmp|*.gif|*.*|*.jpg.ShowOpen.Init

28、Dir = App.PathMe.Picture1.Picture = LoadPicture(Me.CommonDialog1.FileName)End With用户信息维护在Form的 load事件中加入如下代码If Frm_login.Combo1.Text = 0 Then 判断当前使用者是管理员还是一般用户Me.Combo1.Text = Frm_login.Text1.Text 若为一般用户则该用户名赋值给Combo1.Text,否则,则把所有用户名都加到Combo1中ElseSet s = New ADODB.ConnectionDim str As Stringstr = pr

29、ovider=microsoft.jet.oledb.4.0;data source= & App.Path & books_sale.mdb;persist security info=falses.Open strSet c = New ADODB.Recordsetc.Open select * from tb_login, str, 1, 1c.MoveFirstWhile Not c.EOFCombo1.AddItem (c.Fields(name).Value)c.MoveNextWendEnd If在“确定”按纽的click事件中加入如下代码Call OpenDataBasers

30、t.Open tb_login, con, adOpenStatic, adLockOptimistic, -1Adodc1.RecordSource = select password from tb_login where name = combo1.textIf Text1.Text rst.Fields(password).Value Then 判断输入的原密码是否与数据库中的相同MsgBox 您输入的原密码不正确,请重新输入!, vbOKOnly + vbInformation, 提示Elserst.Fields(password) = Text2.Textrst.Updaterst.Requeryrst.CloseMsgBox 密码修改成功!, vbOKOnly + vbInformation, 提示Unload MeEnd If四:调试过程.系统运行时的第一个界面如图4-1所示 图4-1.然后进入登录界面,如图4-2所示 图4-2.用户正确登录之后则可以进入主界

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论