




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘 要近年来,计算机技术日趋成熟,数据库技术不断发展,管理信息系统的应用已延伸到社会的各个领域。结合管理信息系统的开发方法及步骤,以此为理论基础,开发出一个小型的信息管理系统化妆品销售系统。 销售管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析,决定使用 MICROSOFT公司的 VISUAL BASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。关键词:数据库;Visual Basic6.0;化妆品销售管理 目 录第一章、绪论1第二章、系统分析和设计12.1对本系统的功能分析12.2对本系统的数据结构设计22.3 数据库设计3第三章、系统实现43.1登录窗口43.2化妆品销售系统界面6查询窗口8结论18参考文献19第一章、绪论现代科学的发展,使计算机进入了几乎一切领域。从科学研究到工农业生产,从企业生产管理到家庭生活,各行各业都广泛地使用着计算机。当今社会的数据信息管理离不开计算机技术的支持。如何实现对数据信息快捷、有效、实用的管理,是软件开发业追求的目标。 随着改革开放给中国经济带来高速发展的同时,大批的中小企业遇到了前所未有的挑战跟机遇。为了利润最大化,为提高工作效率,为减少劳动冗余,人们将业务与计算机结合,有了信息管理系统的诞生。随着计算机信息处理的加快,人们越来越认同这种管理系统所带来的便捷与高效。小型化妆品销售公司及店铺都在积极尝试信息化带来的丰硕成果,不断更新观念,摈弃传统观念的束缚,尝试着采用更方便快捷的信息管理系统。化妆品销售管理系统与传统手工记录的方式相比,消除了重复劳动带来的冗余工作量,效率更加高效,灵活的工作方式给从业着提供了更多的选择空间,规范考核绩效,评估方法等实施规范。同时,避免了手工操作带来的烦琐,效率低下的缺点。我前台采用visul basic软件,后台数据库采用access关系型数据库管理系统,对所需数据进行保存与处理。本系统要实现的功能有基础数据设置,入库管理,出库管理,库存管理,营业统计,数据管理等功能模块。其中基础数据设置负责对化妆品基本信息的录入;入库管理负责对采购化妆品的登记与查询,采购退货登记与查询;出库管理负责销售化妆品的登记与查询,销售退货登记与查询;库存管理负责库存查询,库存预警,库存损益;营业统计负责营业统计,销售化妆品排行榜,每日结帐,历史帐单查询;数据管理负责数据库的备份与恢复,用户管理与口令修改,界面设置。通过对上述功能的实现,满足化妆品市场的需求。第二章、系统分析和设计2.1对本系统的功能分析在对化妆品销售行业的组织结构及职能充分调查了解后,依据对化妆品销售行业的数据流动特点的分析,现在可以进行系统的功能分析,根据软件工程的原理,需求分析的任务是确定系统必须完成的工作。经过详细的调研分析之后,可以得出化妆品销售系统必须具备的功能下:1、库存管理功能:应该包括商品入库、库存退回、入库明细查询;2、销售管理功能:应该包括商品售出、售出商品退回;3、销售查询功能:应该包括销售情况查询、赠送情况查询;2.2对本系统的数据结构设计本系统中,用户先登录到系统中,输入用户名判定密码表中是否有此用户,这是个验证过程,通过验证才能确定登录。使用本系统可以方便地管理商品名称、商品代码、产地、功能、保质期、生产日期和价格等基本信息,及时调整资料的最新信息,提高汽车租赁管理的管理水平,从而使化妆品管理真正实现无纸化。本系统实现的功能主要包括:用户管理,系统用户登录后,进入管理界面,可以对库存管理、销售管理、销售查询进行增、删、改的操作。系统操作流程图如下:化妆品管理系统库存管理销售管理销售查询退 出商品入库商品售出库存退回入库明细查询售出商品退出销售情况查询赠送情况查询2.3 数据库设计商品库存:表商品名称商品数量商品售价12346110425大象100120欧莱雅40380 入库明细:表商品名称入库时间数量备注大象200912181001234620091218111112346200912185退回欧莱雅0商品销售:表商品名称销售日期商品售价商品数量1234620091218251第三章、系统实现3.1登录窗口登录窗口主要应用于用户登录、输入密码等功能。登陆界面主要程序:Private Sub Command1_Click() Dim MPassword As String Adodc1.RecordSource = select * from 密码表 where username = & Text1.Text & Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then MPassword = Adodc1.Recordset.Fields(password) If Text2.Text = MPassword Then 判断数据的密码是否正确 Name1 = Text1.Text main.Show frm_Main.Show Unload Me Else MsgBox 密码不正确,请您确认后重新输入, , 提示信息 Text2.Text = Text2.SetFocus End IfElse MsgBox 对不起 没有此用户的信息, , 提示信息 Text1.Text = Text2.Text = End IfEnd SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Form_Load() Adodc1.RecordSource = select * from 密码表 Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then ListView1.Enabled = True ListView1.ListItems.Clear i = 1 Adodc1.Recordset.MoveFirst Do While Adodc1.Recordset.EOF = False Key = Adodc1.Recordset.Fields(username) Set itmX = ListView1.ListItems.Add(, , Key, i) i = i + 1 Adodc1.Recordset.MoveNext Loop Else ListView1.Enabled = False End IfEnd SubPrivate Sub ListView1_Click() Text1.Text = ListView1.SelectedItem Adodc1.Refresh Text2.SetFocusEnd Sub3.2化妆品销售系统界面用户在登录后首页后会看到化妆品销售系统界面,分为五大部分,分别是:库存管理、销售管理、销售查询、帮助、退出。主要代码: Private Sub Form_Load()End SubPrivate Sub 关于_Click(Index As Integer)gy.Show 1End SubPrivate Sub 库存查询_Click(Index As Integer)kccx.Show 1End SubPrivate Sub 库存退回_Click(Index As Integer)spth.Show 1End SubPrivate Sub 日查询_Click(Index As Integer)Dim db As DatabaseDim rs As Recordsetsl = 0zj = 0yl = 0Set db = OpenDatabase(App.Path & db1.mdb)Set rs = db.OpenRecordset(select * from 商品销售 where 销售日期 like & Date & ) If rs.EOF Or rs.BOF Then MsgBox (当日没商品售出) Else rcx.Show 1 End IfEnd SubPrivate Sub 入库明细查询_Click()rkmx.Show 1End SubPrivate Sub 商品入库_Click(Index As Integer)sprk.Show 1End SubPrivate Sub 商品售出_Click(Index As Integer)spcs.Show 1End SubPrivate Sub 商品退回_Click(Index As Integer)spth.Show 1End SubPrivate Sub 售出商品退回_Click()scspth.Show 1End SubPrivate Sub 退出_Click(Index As Integer)Unload MeEnd SubPrivate Sub 销售情况查询_Click(Index As Integer)rcx.Show 1End SubPrivate Sub 赠送情况查询_Click()zscx.Show 1End Sub3.3查询窗口查询窗口是按照分类来查询,通过在TextBox里输入想要查询的方式,再点击下边对应的按钮,就能显示想要查询的信息。Private Sub Command1_Click()Unload MeEnd SubPrivate Sub Command2_Click()If Combo4.Text = Then cb4 = *Else cb4 = Combo4.TextEnd IfIf Combo1.Text = Then cb1 = *Else cb1 = Combo1.TextEnd IfIf Combo2.Text = Then cb2 = *Else cb2 = Combo2.TextEnd IfIf Combo3.Text = Then cb3 = *Else cb3 = Combo3.TextEnd If Dim db As DatabaseDim rs As Recordsetsl = 0zj = 0Set db = OpenDatabase(App.Path & db1.mdb)Set rs = db.OpenRecordset(select * from 商品销售 where 商品名称 like & cb4 & and year(销售日期) like & cb1 & and Month(销售日期) like & cb2 & and day(销售日期) like & cb3 & ) If rs.EOF Or rs.BOF Then MsgBox (没有符合条件的记录!) Else With MSFlexGrid1 .FormatString = |商品名称|商品售价|商品售出数量|售出时间|合计 .ColWidth(0) = 0 .ColWidth(1) = 2000 .ColWidth(2) = 1300 .ColWidth(3) = 1300 .ColWidth(4) = 2000 .ColWidth(5) = 1300 .Rows = 1Wi: hj = 0 hj = rs(商品售价) * rs(商品数量) .AddItem vbTab & rs(商品名称) & vbTab & rs(商品售价) & vbTab & rs(商品数量) & vbTab & rs(销售日期) & vbTab & hj sl = sl + rs(商品数量) zj = zj + hj rs.MoveNext If Not (rs.EOF Or rs.BOF) Then GoTo Wi End If .AddItem vbTab & 合计 & vbTab & zj & vbTab & sl & vbTab & & vbTab & zj End WithEnd IfEnd SubPrivate Sub Form_Load() Dim ra As Recordset Dim db As Database Set db = OpenDatabase(App.Path & db1.mdb) Set ra = db.OpenRecordset(select * from 商品库存 ) If ra.BOF Or ra.EOF Then GoTo en End If With Combo4Wi1: .AddItem ra(商品名称) ra.MoveNext If Not (ra.EOF Or ra.BOF) Then GoTo Wi1 End If End Withen:With MSFlexGrid1 .FormatString = |商品名称|商品售价|商品售出数量|售出时间|合计 .ColWidth(0) = 0 .ColWidth(1) = 2000 .ColWidth(2) = 1300 .ColWidth(3) = 1300 .ColWidth(4) = 2000 .ColWidth(5) = 1300 .Rows = 1End WithEnd SubPublic lj As BooleanPrivate Sub Check1_Click() lj = Not lj Combo2.Visible = ljEnd SubPrivate Sub Combo1_Click(Index As Integer) Dim ra As Recordset Set db = OpenDatabase(App.Path & db1.mdb) Set ra = db.OpenRecordset(select * from 商品库存 where 商品名称 like & Combo1(0).Text & ) Text2(1).Text = ra(商品售价)End SubPrivate Sub Command1_Click(Index As Integer)If Combo1(0) = Then MsgBox (请选择商品名称) GoTo enEnd IfIf Not IsNumeric(Trim(Text2(1) Then MsgBox (请输入正确的商品单价) Text2(1).Text = Text2(1).SetFocus GoTo en1End IfDim db As DatabaseDim ra As RecordsetDim rs As RecordsetDim rs1 As RecordsetDim sql As StringSet db = OpenDatabase(App.Path & db1.mdb)Set ra = db.OpenRecordset(select * from 商品库存 where 商品名称 like & Combo1(0).Text & ) If ra(商品数量) = 0 Then MsgBox (商品已全部售出!) GoTo en End Ifra.Editra(商品数量) = ra(商品数量) - 1ra.UpdateSet rs = db.OpenRecordset(select * from 商品销售 where 商品名称 like & Combo1(0).Text & and 销售日期 like & Date & )If rs.EOF Or rs.BOF Then rs.AddNew rs(商品名称) = Combo1(0).Text rs(商品售价) = Text2(1).Text rs(商品数量) = 1 rs(销售日期) = DateElse rs.Edit rs(商品数量) = rs(商品数量) + 1End Ifrs.UpdateMsgBox (商品出售成功!)If lj Then Set ra = db.OpenRecordset(select * from 商品库存 where 商品名称 like & Combo2.Text & ) ra.Edit ra(商品数量) = ra(商品数量) - 1 ra.Update aaa = 0 aaa = ra(商品售价) Set rs = db.OpenRecordset(select * from 赠送情况 where 商品名称 like & Combo2.Text & and 赠送日期 like & Date & ) If rs.EOF Or rs.BOF Then rs.AddNew rs(商品名称) = Combo2.Text rs(赠送数量) = 1 rs(赠送日期) = Date rs(商品售价) = aaa Else rs.Edit rs(赠送数量) = rs(赠送数量) + 1 End If rs.UpdateElseEnd If en:Combo1(0).Text = en1:Text2(1).Text = End SubPrivate Sub Command2_Click(Index As Integer)Unload MeEnd SubPrivate Sub Text1_Change(Index As Integer)End SubPrivate Sub Form_Load()lj = False Dim ra As Recordset Dim db As Database Set db = OpenDatabase(App.Path & db1.mdb) Set ra = db.OpenRecordset(select * from 商品库存 ) If ra.BOF Or ra.EOF Then MsgBox (请先入库) GoTo en End If With Combo1(0)Wi1: .AddItem ra(商品名称) ra.MoveNext If Not (ra.EOF Or ra.BOF) Then GoTo Wi1 End If End With Set db = OpenDatabase(App.Path & db1.mdb) Set ra = db.OpenRecordset(select * from 商品库存 ) With Combo2Wi2: .AddItem ra(商品名称) ra.MoveNext If Not (ra.EOF Or ra.BOF) Then GoTo Wi2 End If End Withen:End Sub Private Sub Command1_Click()Unload MeEnd SubPrivate Sub Command2_Click()If Combo4.Text = Then cb4 = *Else cb4 = Combo4.TextEnd IfIf Combo1.Text = Then cb1 = *Else cb1 = Combo1.TextEnd IfIf Combo2.Text = Then cb2 = *Else cb2 = Combo2.TextEnd IfIf Combo3.Text = Then cb3 = *Else cb3 = Combo3.TextEnd If Dim db As DatabaseDim rs As Recordsetsl = 0zj = 0Set db = OpenDatabase(App.Path & db1.mdb)Set rs = db.OpenRecordset(select * from 赠送情况 where 商品名称 like & cb4 & and year(赠送日期) like & cb1 & and Month(赠送日期) like & cb2 & and day(赠送日期) like & cb3 & ) If rs.EOF Or rs.BOF Then MsgBox (没有符合条件的记录!) Else With MSFlexGrid1 .FormatString = |商品名称|商品售价|商品赠送数量|赠送时间|合计 .ColWidth(0) = 0 .ColWidth(1) = 2000 .ColWidth(2) = 1300 .ColWidth(3) = 1300 .ColWidth(4) = 2000 .ColWidth(5) = 1300 .Rows = 1Wi: hj = 0 hj = 0 - rs(商品售价) * rs(赠送数量) .AddItem vbTab & rs(商品名称) & vbTab & rs(商品售价) & vbTab & rs(赠送数量) & vbTab & rs(赠送日期) & vbTab & hj sl = sl + rs(赠送数量) zj = zj + hj rs.MoveNext If Not (rs.EOF Or rs.BOF) Then GoTo Wi End If .AddItem vbTab & 合计 & vbTab & zj & vbTab & sl & vbTab & & vbTab & zj End WithEnd IfEnd SubPrivate Sub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学生不良行为矫正教学方案
- (2025年标准)电梯中标分包协议书
- (2025年标准)电梯项目居间协议书
- 2025甘肃陇南市金陇煤矿业有限责任公司招聘5人考试备考题库及答案解析
- (2025年标准)道路维修简易协议书
- (2025年标准)单位用电租赁协议书
- 2025温福高铁(连江段)项目指挥部招聘2人笔试参考题库附答案解析
- 2025-A0954河北邯郸市涉县选聘(校园招聘)高中教师12人考试参考题库附答案解析
- 2025安宁市连然社区卫生服务中心招聘劳务派遣人员(1人)考试模拟试题及答案解析
- 施工试验检验标准化执行计划模板
- 厨房消防安全培训
- 小陈 税务风险应对常见指标与答复思路
- 2025年《中华人民共和国档案法》知识培训试题及答案
- 2026年高考政治一轮复习:必修2《经济与社会》知识点背诵提纲
- 2025至2030年中国建筑膜行业市场调查研究及发展趋势预测报告
- 2025年急诊急救试题(附答案)
- 2025年北京市中考语文试卷(含答案与解析)
- (正式版)HGT 22820-2024 化工安全仪表系统工程设计规范
- 实验报告-探究杠杆的平衡条件
- 第3章access2010查询操作-上传
- 钳工手工制作六角螺母详细
评论
0/150
提交评论