手机销售信息管理系统doc.docx

上传人:b****8 文档编号:10241123 上传时间:2023-02-09 格式:DOCX 页数:21 大小:151.35KB
下载 相关 举报
手机销售信息管理系统doc.docx_第1页
第1页 / 共21页
手机销售信息管理系统doc.docx_第2页
第2页 / 共21页
手机销售信息管理系统doc.docx_第3页
第3页 / 共21页
手机销售信息管理系统doc.docx_第4页
第4页 / 共21页
手机销售信息管理系统doc.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

手机销售信息管理系统doc.docx

《手机销售信息管理系统doc.docx》由会员分享,可在线阅读,更多相关《手机销售信息管理系统doc.docx(21页珍藏版)》请在冰豆网上搜索。

手机销售信息管理系统doc.docx

手机销售信息管理系统doc

手机销售信息管理系统

 

1、设计目的

销售管理信息系统作为信息管理系统的一个分支,已逐渐成为企业信息化建设的重要组成部分,为企业管理分布在全国网点提供了一个功能强大,安装部署方便,使用成本低廉,操作简捷的实时销售管理系统,不仅能够促进销售业务的拓展,提高销售运作的效益,也为最终实现有效的“供应链管理”和更加广泛的“电子商务”奠定了基础。

无论是一个销售公司还是一个销售商店,都有很多的销售数据需要管理,手工管理这些缤纷复杂的数据的方式已经不适应时代的潮流,实现数据规范化、自动化的电脑管理,是一个管理规范、运作高效的企事业单位的必然要求。

所以为了实现各销售单位高效管理而设计这个手机销售信息管理系统。

手机销售信息管理系统的设计与开发,从根本上解决整个商品销售流程中数据处理效率低,处理能力差等操作过程中表现出来的不足之处。

方便对商品资料、销售业绩等进行高效的管理。

使用该程序,管理层可以及时查询、管理商品,还可以对当前销售业绩进行一些统计,给出统计表格,以便全面掌握商品的销售情况。

二、设计任务

本系统主要考虑了最为普遍的销售管理需求

Ø进货时入库登记,以便日后查看和统计进货情况。

Ø销售时把相应数量的商品从现存商品库中减去,并记录于另一个销售库中,以便日后产看和统计销售信息。

Ø是销售就难免会有顾客退货情况发生,因此还需建立一个相应的退货管理,把退回的货加入现存商品库,在从销售库中减去,进行退货登记。

Ø还要能够随时查看各种信息表格,如员工信息、进货信息、销售信息、退货信息。

Ø除了以上一些基本的需求外,实际公司用来进行决策和管理分析的数据才是用得最多的数据,因此还需要有一些相应的关于以上数据统计信息,如希望查看各个信息段(如果近日,本月,本年度)的进货和销售情况,以便以后的运作进行一个准确的预测和正确的决断。

Ø为了调动员工的积极性,员工的薪水应该和他的销售情况挂上钩,因此还要能够准确查看各员工的销售情况,以便对他们的业绩进行考核和评比。

这个系统是针对一般的销售公司都有的以上需求而设计的,可以有效的管理数据,主要功能有:

Ø交易管理:

进货登记管理、销售登记管理、退货登记管理;

Ø进货统计管理:

近日进货统计,本月进货统计、本季度进货统计、本年度进货统计;

Ø销售统计管理:

今日销售统计、本月销售统计、本季度销售统计、本年度销售统计;

Ø员工的销售业绩的考核;

三、设计内容

系统需求在系统开发上,我们选取的工具是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图对应的关系图如下:

4、测试与评价

整个系统测试的时候出现了很多的问题其中最关键的是连接数据的问题,前期数据基本准备妥当,在连接过程中却出现找不到数据源等类似的错误,经过反复测试,原来是忘记配置数据源。

连接数据库窗口:

连接数据库窗口使用windows身份登陆

在做连接数据窗口的时候里面的代码做出了很大的努力,提供了两种连接数据库的方式,在此采用的是用windows身份登陆可以免去输入用户名与密码的麻烦。

销售登记实现窗口:

在此功能基本实现了一个手机销售登记的模块,主要对库存手机实现一个销售登记的作用,实现对已售货物表的一个修改。

此功能的实现,可以对客户的售后服务起到一个保障作用。

查看业绩实现窗口:

此功能实现的是员工的销售额统计,员工过多的话可以采用查询单个员工号进行查看。

此项功能主要实现对员工销售额的统计,也是整个公司的业绩财务报表,通过此表可以更完善的发放员工的工资待遇。

5、结论

通过对手机销售信息管理系统的设计与开发,从根本上解决整个商品销售流程中数据处理效率低,处理能力差等操作过程中表现出来的不足之处。

整个手机销售信息管理系统方便了对商品资料、销售业绩等进行高效的管理。

通过对手机销售信息管理系统的分析,设计,到最后的实现,基本上实现了系统预定的功能及需求。

在系统分析阶段,预定系统的主要功能有登录系统,进货统计,销售统计,交易管理,业绩查看及查看数据表等六大主要模块。

其中最难解决的是交易管理模块,包括进货登记,销售登记及退货登记管理。

在实现这些功能中,遇到了许多的关系模块之间的联系问题,通过大量的翻阅书籍最终得以实现整个手机管理信息系统。

这次课程设计做的是手机销售信息管理系统,这是第一次接触到如此系统的设计,也是第一次接触到这么难的设计。

由于第一次接触,在开发过程中可谓是困难重重,不知如何入手,不得不重回书本,通过翻阅大量的资料,和同学们一起讨论,慢慢的有了一点点头绪,仔细的分析题目,分析材料,在原由的基础上进行了改正,我最后还是运行成功了,虽然还是经过了一翻努力,当然汗水还是留的很值,这次课程设计,不仅让我对软件工程这门课程有了更深入的研究、对很多重要的概念有了巩固和掌握,还给了我今后做事的启示。

做事要塌实,不能想着一步登天,要有计划,有目的的进行做事。

盲目真的不应该再在我们新一代的大学生身上出现了,我们应该认真找到自己的缺点并且及时改正。

6、致谢

在这次的开发当中,可谓是困难重重,由于在此之前都从未接触过此类系统开发,所以很多的细节都未曾注意,导致后期出现了许多的不可预见性的错误。

最后在同学们和老师的帮助下,将问题一个一个解决,特别是在彭老师的帮助下,将那些细节问题一一解决。

在此我要特别感谢帮助过我的同学以及彭老师的帮助,谢谢。

 

附录

源代码清单:

连接数据库窗口代码:

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销售

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1