手机销售信息管理系统方案.docx
- 文档编号:8603431
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:19
- 大小:151.85KB
手机销售信息管理系统方案.docx
《手机销售信息管理系统方案.docx》由会员分享,可在线阅读,更多相关《手机销售信息管理系统方案.docx(19页珍藏版)》请在冰豆网上搜索。
手机销售信息管理系统方案
手机销售信息管理系统
一、设计目的
销售管理信息系统作为信息管理系统的一个分支,已逐渐成为企业信息化建设的重要组成部分,为企业管理分布在全国网点提供了一个功能强大,安装部署方便,使用成本低廉,操作简捷的实时销售管理系统,不仅能够促进销售业务的拓展,提高销售运作的效益,也为最终实现有效的“供应链管理”和更加广泛的“电子商务”奠定了基础。
无论是一个销售公司还是一个销售商店,都有很多的销售数据需要管理,手工管理这些缤纷复杂的数据的方式已经不适应时代的潮流,实现数据规化、自动化的电脑管理,是一个管理规、运作高效的企事业单位的必然要求。
所以为了实现各销售单位高效管理而设计这个手机销售信息管理系统。
手机销售信息管理系统的设计与开发,从根本上解决整个商品销售流程中数据处理效率低,处理能力差等操作过程中表现出来的不足之处。
方便对商品资料、销售业绩等进行高效的管理。
使用该程序,管理层可以及时查询、管理商品,还可以对当前销售业绩进行一些统计,给出统计表格,以便全面掌握商品的销售情况。
二、设计任务
本系统主要考虑了最为普遍的销售管理需求
Ø进货时入库登记,以便日后查看和统计进货情况。
Ø销售时把相应数量的商品从现存商品库中减去,并记录于另一个销售库中,以便日后产看和统计销售信息。
Ø是销售就难免会有顾客退货情况发生,因此还需建立一个相应的退货管理,把退回的货加入现存商品库,在从销售库中减去,进行退货登记。
Ø还要能够随时查看各种信息表格,如员工信息、进货信息、销售信息、退货信息。
Ø除了以上一些基本的需求外,实际公司用来进行决策和管理分析的数据才是用得最多的数据,因此还需要有一些相应的关于以上数据统计信息,如希望查看各个信息段(如果近日,本月,本年度)的进货和销售情况,以便以后的运作进行一个准确的预测和正确的决断。
Ø为了调动员工的积极性,员工的薪水应该和他的销售情况挂上钩,因此还要能够准确查看各员工的销售情况,以便对他们的业绩进行考核和评比。
这个系统是针对一般的销售公司都有的以上需求而设计的,可以有效的管理数据,主要功能有:
Ø交易管理:
进货登记管理、销售登记管理、退货登记管理;
Ø进货统计管理:
近日进货统计,本月进货统计、本季度进货统计、本年度进货统计;
Ø销售统计管理:
今日销售统计、本月销售统计、本季度销售统计、本年度销售统计;
Ø员工的销售业绩的考核;
三、设计容
系统需求在系统开发上,我们选取的工具是MicrosoftVisualBasic,数据库采用MicrosoftSQLServer2005。
本系统总体的功能是实现手机销售公司管理的系统化、规化和自动化。
主要功能有:
Ø系统登陆:
用户登陆、添加用户、修改密码、退出系统;
Ø交易管理:
进货登记、销售登记、退货登记
进货登记包括进货厂商登记,如果是新的进货厂商,可以在此登记入库。
进货和销售的主要交易都是在此进行,每次交易(包括进货,销售和退货)都需要对商品名、生产厂商、商品型号、单价、数量、总金额、交易日期、经手业务员编号等各项进行记录。
Ø进货统计:
今日进货统计、本月进货统计、本季度进货统计、本年度进货统计。
其中每次进货统计都是统计都是按照进货厂商和进货金额顺序排列的。
使用一个表格显示所选时间段的全部进货数据,包括进货编号、商品名、生产厂商、产品型号、单价、数量、总金额、进货日期、业务员编号等;再使用另一个表格显示分别从各个厂商进货的金额,还有一个文本框用于显示此时间段的总进货金额。
Ø销售统计:
今日销售统计、本月销售统计、本季度销售统计、本年度销售统计等。
其次每次销售统计都是按产品厂商和销售金额顺序排列的,用户可以一目了然的看出各种型号的产品的销售额。
使用一个表格显示所选时间段的全部销售数据,包括销售编号,商品名、生产厂商、产品型号、单价、数量、总金额、销售日期、业务员编号等;再使用一个表分别显示各个厂商产品的销售金额,还有一个文本框用于显示此时间段的总销售金额。
Ø业绩查看:
实现个员工销售情况的统计,可以一次性显示所有员工的销售情况,也可以根据员工的编号查看各个员工的销售情况。
Ø查看数据表:
实现各种数据表的浏览,包括进货表,销售表,退货表,员工表,进货厂商表。
浏览时此数据表的所有信息全部显示。
如果是员工信息或进货商信息有变化,还可以对员工表和进货商表进行修改,其他的表格则不能进行修改,防止有人制造假数据。
系统功能设计模块
对上述功能经行集中,分块,按照结构化程序的要求,进行分析,得到一下图:
Ø员工表中包括商品编号,员工,员工,员工地址等字段,具体员工表(如表1):
employee(员工表)
字段名
数据类型
说明
员工编号
varchar
表示,自动标号,主键
员工
varchar
字段大小为8
员工
varchar
字段大小为12
员工地址
varchar
字段大小为50
表1
Ø现存货物表中包括商品编号,生产厂商,商品名,型号,价格,数量,总金额,进货年,进货月,进货日,业务员编号,商品配件等字段,具体现存货物表(如表2):
Good(现存表)
字段名
数据类型
说明
商品编号
varchar
表示,自动标号,主键
产品厂商
varchar
字段大小为20,外键
商品名
varchar
字段大小为20
型号
varchar
字段大小为20
单价
Money
货币型
数量
Numeric
数值型
总金额
Money
货币型
进货年
Smallint
短整型
进货月
Smallint
短整型
进货日
Smallint
短整型
业务员编号
Int
整型
表2
Ø已售商品表中包括有商品编号,生产厂商,商品名,型号,单价,数量,总金额,销售年,销售月,销售日,业务员编号字段,顾客,顾客联系,商品配件具体表格(如表3):
Sell(已售商品表)
字段名
数据类型
说明
商品编号
varchar
表示,自动标号,主键
产品厂商
varchar
字段大小为20,外键
商品名
varchar
字段大小为20
型号
varchar
字段大小为20
单价
Money
货币型
数量
Numeric
数值型
总金额
Money
货币型
销售年
Smallint
短整型
销售月
Smallint
短整型
销售月
Smallint
短整型
业务员编号
Int
整型
表3
Ø退货表中包括有商品编号,生产厂商,商品名,型号,单价,数量,总金额,退货年,退货月,退货日,业务员编号,顾客,顾客联系,商品配件等字段,具体表格(如表4):
Retreat(退货表)
字段名
数据类型
说明
商品编号
varchar
表示,自动标号,主键
产品厂商
varchar
字段大小为20,外键
商品名
varchar
字段大小为20
型号
varchar
字段大小为20
单价
Money
货币型
数量
Numeric
数值型
总金额
Money
货币型
退货年
Smallint
短整型
退货月
Smallint
短整型
退货日
Smallint
短整型
业务员编号
Int
整型
表4
Ø进货表中包括有厂商编号,厂商名称,法人代表,,厂商地址,商品名,商品配件,型号,单价,数量,总金额等字段,具体表格(如表5):
Manufacturer(厂商)
字段名
数据类型
说明
厂商编号
varchar
标识,自动编号,主键
厂商名称
Nvarchar
唯一约束,字段大小为20
法人代表
Nvarchar
字段大小为10
厂商地址
Nvarchar
字段大小为100
商品名
Nvarchar
字段大小为20
型号
Nvarchar
字段大小为20
单价
Money
货币型
数量
Numeric
数值型
总金额
Money
货币型
进货年
Smallint
短整型
进货月
Smallint
短整型
进货日
Smallint
短整型
表5
Ø用户表中包括编号,用户名,密码等字段,具体表格(如表6):
User(用户表)
字段名
数据类型
说明
用户编号
varchar
标识
用户名
Nvarchar
字段大小为10
密码
Nvarchar
字段大小为10
表6
数据库设计的主要任务是在DBMS(databasemanagementsystem)的支持下,按照应用的要求,数据结构的好坏将直接影响到系统的效率以及实现的效果。
好的数据库结构会减少数据库的存储量、冗余度,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于数据库的应用程序的实现方法等。
实体具体的描述如下:
E-R图对应的关系图如下:
四、测试与评价
整个系统测试的时候出现了很多的问题其中最关键的是连接数据的问题,前期数据基本准备妥当,在连接过程中却出现找不到数据源等类似的错误,经过反复测试,原来是忘记配置数据源。
连接数据库窗口:
连接数据库窗口使用windows身份登陆
在做连接数据窗口的时候里面的代码做出了很大的努力,提供了两种连接数据库的方式,在此采用的是用windows身份登陆可以免去输入用户名与密码的麻烦。
销售登记实现窗口:
在此功能基本实现了一个手机销售登记的模块,主要对库存手机实现一个销售登记的作用,实现对已售货物表的一个修改。
此功能的实现,可以对客户的售后服务起到一个保障作用。
查看业绩实现窗口:
此功能实现的是员工的销售额统计,员工过多的话可以采用查询单个员工号进行查看。
此项功能主要实现对员工销售额的统计,也是整个公司的业绩财务报表,通过此表可以更完善的发放员工的工资待遇。
五、结论
通过对手机销售信息管理系统的设计与开发,从根本上解决整个商品销售流程中数据处理效率低,处理能力差等操作过程中表现出来的不足之处。
整个手机销售信息管理系统方便了对商品资料、销售业绩等进行高效的管理。
通过对手机销售信息管理系统的分析,设计,到最后的实现,基本上实现了系统预定的功能及需求。
在系统分析阶段,预定系统的主要功能有登录系统,进货统计,销售统计,交易管理,业绩查看及查看数据表等六大主要模块。
其中最难解决的是交易管理模块,包括进货登记,销售登记及退货登记管理。
在实现这些功能中,遇到了许多的关系模块之间的联系问题,通过大量的翻阅书籍最终得以实现整个手机管理信息系统。
这次课程设计做的是手机销售信息管理系统,这是第一次接触到如此系统的设计,也是第一次接触到这么难的设计。
由于第一次接触,在开发过程中可谓是困难重重,不知如何入手,不得不重回书本,通过翻阅大量的资料,和同学们一起讨论,慢慢的有了一点点头绪,仔细的分析题目,分析材料,在原由的基础上进行了改正,我最后还是运行成功了,虽然还是经过了一翻努力,当然汗水还是留的很值,这次课程设计,不仅让我对软件工程这门课程有了更深入的研究、对很多重要的概念有了巩固和掌握,还给了我今后做事的启示。
做事要塌实,不能想着一步登天,要有计划,有目的的进行做事。
盲目真的不应该再在我们新一代的大学生身上出现了,我们应该认真找到自己的缺点并且及时改正。
六、致
在这次的开发当中,可谓是困难重重,由于在此之前都从未接触过此类系统开发,所以很多的细节都未曾注意,导致后期出现了许多的不可预见性的错误。
最后在同学们和老师的帮助下,将问题一个一个解决,特别是在老师的帮助下,将那些细节问题一一解决。
在此我要特别感帮助过我的同学以及老师的帮助,。
附录
源代码清单:
连接数据库窗口代码:
PrivateSubcmdCancel_Click()
UnloadMe
EndSub
PrivateSubcmdConnect_Click()
IfOptionWindows.Value=TrueThen'windows身份验证方式
connStr="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;"_
+"PersistSecurityInfo=False;InitialCatalog="+Trim(cmbDatabase.Text)_
+";DataSource="+Trim(cmbServer.Text)
Else'SQLServer身份验证方式
connStr="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID="_
+Trim(txtUser.Text)+";Password="+Trim(txtPassword.Text)_
+";InitialCatalog="+Trim(cmbDatabase.Text)+";DataSource="_
+Trim(cmbServer.Text)
EndIf
OnErrorGoToerrConnect
Ifconn.State=adStateOpenThen
conn.Close
EndIf
conn.OpenconnStr
MsgBox"连接数据库成功!
",vbOKOnly+vbExclamation,"提示"
'显示登录窗体
frmLogin.Show
frmLogin.SetFocus
UnloadMe
ExitSub
errConnect:
MsgBoxErr.Description,vbOKOnly+vbExclamation,"提示"
EndSu
PrivateSubForm_Load()
'让窗体居中
CallMakeCenter(Me)
EndSub
PrivateSubOptionSqlServer_Click()
IfOptionSqlServer.Value=TrueThen
lblUser.Enabled=True
lblPassword.Enabled=True
txtUser.Enabled=True
txtPassword.Enabled=True
EndIf
EndSub
PrivateSubOptionWindows_Click()
IfOptionWindows.Value=TrueThen
lblUser.Enabled=False
lblPassword.Enabled=False
txtUser.Enabled=False
txtPassword.Enabled=False
EndIf
EndSub
销售登记代码:
PrivateSubcmdReset_Click()
txtName.Text=""
txtFc.Text=""
txtType.Text=""
txtPrice.Text=""
txtQuantity.Text=""
txtyear.Text=""
txtmon.Text=""
txtday.Text=""
txtem.Text=""
txtmoney.Text=""
EndSub
PrivateSubcmdSell_Click()
txtGoodsNo.Enabled=False
IftxtFc.Text=""Then
MsgBox"请填写厂商名称!
",vbOKOnly+vbInformation,"注意"
txtFc.SetFocus
ExitSub
ElseIftxtName.Text=""Then
MsgBox"请填写商品名称!
",vbOKOnly+vbInformation,"注意"
txtName.SetFocus
ExitSub
ElseIftxtType.Text=""Then
MsgBox"请填写商品型号!
",vbOKOnly+vbInformation,"注意"
txtType.SetFocus
ExitSub
ElseIftxtPrice.Text=""Then
MsgBox"请填写商品价格!
",vbOKOnly+vbInformation,"注意"
txtPrice.SetFocus
ExitSub
ElseIftxtQuantity.Text=""Then
MsgBox"请填写商品数量!
",vbOKOnly+vbInformation,"注意"
txtQuantity.SetFocus
ExitSub
ElseIftxtyear.Text=""Then
MsgBox"请填写销售年份!
",vbOKOnly+vbInformation,"注意"
txtyear.SetFocus
ExitSub
ElseIftxtmon.Text=""Then
MsgBox"请填写销售月份!
",vbOKOnly+vbInformation,"注意"
txtmon.SetFocus
ExitSub
ElseIftxtday.Text=""Then
MsgBox"请填写销售日!
",vbOKOnly+vbInformation,"注意"
txtday.SetFocus
ExitSub
ElseIftxtem.Text=""Then
MsgBox"请填写业务员!
",vbOKOnly+vbInformation,"注意"
txtem.SetFocus
ExitSub
ElseIftxtmoney.Text=""Then
MsgBox"请填写总金额!
",vbOKOnly+vbInformation,"注意"
txtmoney.SetFocus
ExitSub
EndIf
DimsqlcheckAsString
sqlcheck="select*fromgoodswhere商品名='"&txtName.Text&_
"'and生产厂商='"&txtFc.Text&"'and型号='"&txtType.Text&"'"
rs_check.CursorLocation=adUseClient'设定游标类型
rs_check.Opensqlcheck,conn,adOpenKeyset,adLockPessimistic
Ifrs_check.EOF=TrueThen
MsgBox"对不起,此商品型号已无货!
请选择其他型!
",vbOKOnly+vbInformation,"注意"
rs_check.Close
ExitSub
ElseIfrs_check.Fields(5) MsgBox"此型号商品不足! ",vbOKOnly+vbInformation,"注意" rs_check.Close ExitSub EndIf DimsqlsellAsString sqlsell="select*fromsell" rs_add.Opensqlsell,conn,adOpenKeyset,adLockPessimistic '添加入销售表 rs_add.AddNew rs_add.Fields (1)=txtFc.Text rs_add.Fields (2)=txtName.Text rs_add.Fields(3)=txtType.Text rs_add.Fields(4)=txtPrice.Text rs_add.Fields(5)=Val(txtQuantity.Text) rs_add.Fields(6)=Val(txtmoney.Text) rs_add.Fields(7)=txtyear.Text rs_add.Fields(8)=txtmon.Text rs_add.Fields(9)=txtday.Text rs_add.Fields(10)=txtem.Text rs_add.Update '从现存商品表中减去 DimoldquantityAsLong'用于存放goods表中原来的此商品数量 DimoldmoneyAsLong'用于存放goods表中原来的此商品进货总额 oldquantity=rs_check.Fields(5) oldmoney=rs_check.Fields(6) rs_check.Fields(5)=oldquantity-Val(txtQuantity.Text) rs_check.Fields(6)=oldmoney-(rs_check.Fields(4))*Val(txtQuantity.Text) rs_check.Update rs_check.Close rs_add.Close MsgBox"销售成功! ",vbOKOnly+vbExclamation,"注意" EndSub PrivateSubForm_Load() '让窗体居中 CallMakeCenter(Me) EndSub 业绩查询代码: Dimrs_checkAsNewADODB.Recordset PrivateSubcmdallem_Click() allem=True 'frmGrade.Show CallShowGrade EndSub PrivateSubcmdCancel_Click() UnloadMe EndSub PrivateSubcmdquery_Click() allem=False 'frmGrade.Show CallShowGrade EndSub PrivateSubForm_Load() '让窗体居中 CallMakeCenter(Me) Adodc1.ConnectionString=connStr allem=True CallShowGrade EndSub PrivateSubShowGrade() Ifallem=FalseThen DimstrsqlAsString '下面的sql语句从sell表和employee表中显示特定员工号的员工号,员工 '并以员工号和员工分组合计销售总额并显示之。 strsql="select业务员编号,员工,sum(总金额)as销售总金额"_ &"fromsell,employeewheresell.业务员编号=emp
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 手机 销售 信息管理 系统 方案