销售管理与智能分析系统本科毕设论文.docx
- 文档编号:10167309
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:44
- 大小:600.72KB
销售管理与智能分析系统本科毕设论文.docx
《销售管理与智能分析系统本科毕设论文.docx》由会员分享,可在线阅读,更多相关《销售管理与智能分析系统本科毕设论文.docx(44页珍藏版)》请在冰点文库上搜索。
销售管理与智能分析系统本科毕设论文
编号:
大学本科毕业论文
销售管理与智能分析系统
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
销售管理与分析系统
摘要:
本文销售管理与分析系统,研究了销售的统计和智能分析,设计并开发了一套管理系统。
该系统的优势在于:
打破常规表格浏览数据方式,采用新的直方图的方式,将数据以直方图的形式显示出来,能帮助管理者更直观,更方便的观察销售数据的变化;能根据已有的销售记录预测未来一段时间内的销售情况。
关键词:
销售数据管理;仓库管理;数据统计;数据预测
1引言
销售数据管理系统随着信息化时代的到来和企业不断发展的需要,在国内外都有很大的市场和研究空间。
现有的销售数据管理系统主要是对于大型数据仓库和中小型数据仓库的研究。
有关大型数据仓库的管理系统大多为企业内部自己开发,其针对性比较强,功能也比较完善,但是他的数据模型也很难运用到其他行业数据仓库的管理,其通用性很差,并且开发成本也比较昂贵。
对于中小型数据仓库的管理系统,市场上有很多。
他们的大部分功能都相差不远。
这些管理系统只具备常规的数据管理,维护功能。
对于更有价值的数据统计,数据预测功能,这些系统通常是不具备的。
即使有少数的系统可能做过这些方面的研究,但是其数据显示模式也是常规的表格形式。
这种表格数据让企业决策者很难从中找到潜在的市场价值。
相对于中小型企业来说,数据统计和数据预测功能,直观的数据显示形式,常常都是很受欢迎的。
而具有这些功能的比较完善的系统市场上少之又少。
这些企业为了生存不会开发针对其自身行业领域的专门系统。
而为了在行业内竞争中获利,这些中小型企业非常需要廉价的功能完善的系统。
显然这些与市场上的产品空白形成了矛盾。
针对国内外研究现状的分析,对于中小型销售数据仓库管理的研究,本系统提出了新的开发模型。
2系统需求分析
需求分析在系统中占有重要地位。
需求分析就是通过与用户的广泛交流,得到未来系统必须具备的功能,即了解未来系统必须做什么,定义系统功能和用户界面,使客户了解系统,开发人员了解系统需求,同时作为制定项目计划的基础。
所以说只有好的系统分析才能做出一个好的系统。
2.1业务需求分析
基本的需求主要包括:
对数据基本信息的管理,对销售明细的查询,统计,基本业务报表的输出和打印,数据维护,对未来销售状况的预测,等。
主要联系是:
图2-1系统需求联系图
2.2功能需求分析
根据以上业务需求分析,在加上相关的系统用户注册,密码找回,帮助系统,可以总结出功能需求。
如下图所示:
图2-2系统模块联系图
2.3系统性能分析
1.系统必须稳定,具有较高的可靠性和容错性
整个系统必须具备很高的安全性,达到可靠稳定,不易出错,容易修复,并且不能影响正常使用。
2.系统软件功能必须完善,便于管理和维护
整套销售管理系统必须能满足用户的需求,便于操作,界面简洁,且易于维护。
3.系统需预留与其他系统的接口
为了适应业务增长的需求,系统需要考虑以后功能的扩充,以及与其他系统的连接等问题。
3数据库设计
数据库是存放数据及相关信息的仓库,是事务处理,信息管理等应用系统的基础。
数据库设计的意义关系到系统开发的成败。
本系统采用关系模型建立数据库。
关系模型以二维表格的形势组织数据库中的数据。
3.1数据采集
系统的原始数据主要来源于网络上的中小型企业。
这些数据只是企业内部数据的一部分。
由于论文的目的主要是提供给开发者一个可以借鉴的模型,并与传统的模型形成对比,一发现其优点所在。
对于系统的研究开发这些数据已经足够了。
3.2E-R数据图
人事信息和员工工资的E-R模型:
图3-1人事信息和员工工资的E-R图
商品信息和销售记录的E-R模型:
图3-2商品信息和销售记录的E-R图
管理员信息包括:
员工号,密码,权限,密保问题,密保答案。
3.3数据表划分及逻辑结构
根据E-R模型,可以对数据表划分及确定逻辑结构。
人事信息表(Workers):
列名
数据类型
主键
允许空
员工号
varchar(30)
是
否
姓名
varchar(30)
否
否
性别
varchar(50)
否
否
出生日期
datetime
否
否
身份证号
varchar(30)
否
否
地址
varchar(30)
否
否
联系方式
varchar(30)
否
否
职位
varchar(30)
否
否
学历
varchar(30)
否
否
员工工资表(Salary):
列名
数据类型
主键
允许空
员工号
varchar(30)
是
否
姓名
varchar(30)
否
否
身份证号
varchar(30)
否
否
工资
float
否
否
奖金
float
否
否
总额
float
否
否
商品信息表(Products):
列名
数据类型
主键
允许空
商品代码
varchar(30)
是
否
商品名称
varchar(30)
否
否
商品类别
varchar(30)
否
否
进入价格
float
否
否
卖出价格
float
否
否
库存量
float
否
否
销售记录表(ProductDetails):
列名
数据类型
主键
允许空
销售记录号
bigint
是
否
商品代码
varchar(30)
否
否
商品名称
varchar(30)
否
否
商品类别
varchar(30)
否
否
销售数量
float
否
否
销售年月
datetime
否
否
管理登录表(Users):
列名
数据类型
主键
允许空
员工号
varchar(30)
是
否
密码
varchar(30)
否
否
权限
varchar(30)
否
否
密保问题
varchar(30)
否
否
密保答案
varchar(30)
否
否
4总体设计
总体设计主要解决在系统设计中,所涉及到的前台数据流程控制,后台数据库,视图的创建,以及Matlab建模程序设计。
4.1总体分析
前面已经分析过功能需求,在其中的数据统计,报表打印等模块要用到大量的视图。
接着上一章的数据库创建后,接下来主要说明系统中所用到的视图的创建,智能分析模块的理论基础,以及相关的matlab程序设计。
4.2前台数据流程
统计模块:
包含,商品信息统计,销售记录统计。
由于统计模块的显示模式有两种(常规表格,图形显示),所以为了减少编程负担,精简程序,使商品信息统计和销售记录统计都采用一个处理模型。
针对常规表格模式,采取调用数据库命令的形式;对于图形显示模型,主要是将统计条件存储到视图中,然后打开图形绘制窗体,读取视图中的数据并以图形的形式显示出来。
智能分析模块:
包括,商品盈亏分析,商品销售预测,总盈亏分析。
商品盈亏分析和总盈亏分析的数据流程主要是,视图统计,然后计算,最后显示结果。
商品销售预测的数据流程比较复杂,在预测数据时需要把将要预测的商品信息存储到视图中,然后由程序读取,传递给已经编制好的matlab程序生成的组件,有这些组件计算要预测的信息。
4.3后台数据库和视图支持
下面是各个模块中所用到的数据视图,辅助视图,及各视图的创建代码:
//生成商品订单数据源的辅助视图
createviewProductDD2asselect商品代码,max(销售年月)as销售年月fromProductDD1groupby商品代码go
//生成商品订单数据源的辅助视图
createviewProductDD3asselecta.[商品代码],a.[商品名称],a.[销售总量],b.[销售年月]fromProductDD1a,ProductDD2bwherea.[商品代码]=b.[商品代码]anda.[销售年月]=b.[销售年月]go
//生成商品订单数据源
createviewProductDDasselecta.[商品代码],a.[商品名称],a.[商品类别],a.[库存量],b.[销售总量]as总销售量,b.[销售总量]-a.[库存量]as订购量,b.[销售年月]fromProductsa,ProductDD3bwherea.[商品代码]=b.[商品代码]go
智能预测模块:
//智能预测所用视图
//用于辅助计算--求总销售额
createviewZNFXZasselect商品名称,sum(销售额)as总销售额
fromProductDetailsgroupby商品名称go
//用于辅助计算--求净利润
createviewZNFXZ1asselecta.[商品名称],a.[总销售额]*(b.[卖出价格]-b.[进入价格])/b.[卖出价格]as净利润fromZNFXZa,Productsb
wherea.[商品名称]=b.[商品名称]go
--验证是否可预测用的辅助模块视图
createviewviewZNasselect商品代码,商品名称,销售年月,sum(销售额)as月销售额fromProductDetailsgroupby商品代码,商品名称,销售年月go
//验证是否可预测用的模块视图
//如果记录条数小于8,则不能预测销售数据
createviewviewZNJLasselect商品代码,商品名称,count(*)as记录条数fromviewZNgroupby商品代码,商品名称go
//分析模块用的视图
alterviewviewZNFXas
select商品名称,(Datediff(month,cast('1996-1-1'asdatetime),cast(销售年月asdatetime)))as月数,sum(销售额)as月销售额,销售年月
fromProductDetailswhere商品名称='牛奶'
groupby商品名称,销售年月go
4.4Matlab程序设计
在智能分析的数据预测功能中,要使用到最小二乘法。
在已有销售记录的基础上使用最小二乘法可以预定制定时间的销售额。
下面详细说明最小二乘法拟合的matlab实现。
最小二乘法拟合:
在这里系统选用最小二乘法拟合多项式函数,次数去2。
下面是系统中用到的matlab程序:
functionresult=tnh(A,B,X)
K=polyfit(A,B,2);
result=polyval(K,X);
end
在程序中A为某个商品的最近8个销售记录时间距离1996-01-01的月数;B为对应A中每个月的销售额;X为要预测的日期距离1996-01-01的月数。
以上模型为最小二乘法,针对不同的企业和销售模式其数据预测可能需要不同的模型,本系统是调用matlab生成的组件,传递给模型数据,然后得出结果。
为了给系统提供更好的适应性,如果需要不同的预测模型,可以直接建模后用matlab程序生成组件,更换掉原来的组件即可运行。
5详细设计
详细设计将描述系统中各个模块的操作流程,界面设计,以及实现程序代码。
5.1登录模块
登录模块通过用户名和密码检查用户是否合法,同时使用验证信息防止恶意登录。
下面是登录窗体(Logn)的显示界面:
图5-1登录窗体界面图
其中员工号和密码是用户在注册中填写的信息,验证信息为随即生成的两个1-9的整数组成的运算式,只有用户输入正确的员工号,密码,并且在验证框中输入正确的结果后方能进入系统。
5.2注册模块
在登录窗体(Logn)中点击注册用户就可以启动注册用户窗体。
下面描述用户注册流程:
图5-2用户注册模块数据流程图图5-3用户注册窗体界面图
5.3密码找回模块
在登录窗体(Logn)中点击密码找回就可以启动密码找回窗体。
下面描述密码找回流程:
图5-4密码找回模块数据流程图图5-5密码找回窗体界面图
5.4主菜单模块
主菜单模块主要是为其他各个功能模块提供操作界面,其界面如下:
图5-6主菜单窗体界面图
主菜单模块代码比较简单,此处不再详述。
5.5基本信息管理模块
该模块包括人事信息管理,员工工资管理,商品信息管理,其代码大致相同,此处只对人事信息管理列出代码:
人事信息管理界面:
图5-7人事信息管理窗体界面图
人事信息管理主要代码:
//flag变量用于控制新建按钮是否可用
//为防止出现异常
//每次插入新的行后都要保存一次后才能再次插入
intflag=1;
privatevoidworkersBindingNavigatorSaveItem_Click(objectsender,EventArgse)
{try{this.Validate();this.workersBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.ePDateDataSet);
flag=1;MessageBox.Show("保存成功!
");}
catch(Exceptionerr)
{MessageBox.Show(err.Message);}}
//--------------保存--------------
PrivatevoidworkersBindingNavigatorSaveItem_Click_1(objectsender,EventArgse)
{if(YzNotNull()){try{this.Validate();
this.workersBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.ePDateDataSet);
flag=1;MessageBox.Show("保存成功!
");}
catch(Exceptionerr)
{MessageBox.Show(err.Message);}}
else{MessageBox.Show("有数据项为空,请填写完整的数据后再保存!
");return;}}
privateboolYzNotNull()
{if(出生日期DateTimePicker.Value==null||地址TextBox.Text==""||联系方式TextBox.Text==""||身份证号TextBox.Text==""||姓名TextBox.Text==""||性别TextBox.Text==""||学历TextBox.Text==""||员工号TextBox.Text==""||职位TextBox.Text=="")
returnfalse;
elsereturntrue;}
//--------------添加新行--------------
privatevoidbindingNavigatorAddNewItem_Click(objectsender,EventArgse){if(flag==0)return;else{flag=0;
bindingNavigatorAddNewItem.Enabled=false;}}
5.6查询模块
该模块包括人事信息查询,员工工资查询,商品信息信息,销售记录查询,其代码大致相同,此处不再详述。
销售记录查询界面:
图5-8销售记录查询窗体界面图
5.7统计模块
统计模块包括商品信息统计,销售记录统计。
统计结果显示形式有表格形式,直方图形式。
在代码上商品信息统计,销售记录统计大致相同。
此处只列出销售记录的代码和图形。
销售记录统计界面(表格模式):
(图中为白米的销售额统计情况)
图5-9销售情况数据统计窗体界面图
销售记录统计界面(直方图模式):
(图中为海苔酱的销售量直方图)
图5-10数据统计模块直方图显示模式窗体界面图
销售记录主要代码:
//------------显示统计结果------------
privatevoidbutton1_Click(objectsender,EventArgse)
{//如果没有选商品类别,返回
if(comboBox1.SelectedIndex==-1||comboBox2.SelectedIndex==-1)
{MessageBox.Show("请选择商品类别和商品名称");
return;}stringcmdString;
SqlConnectionconn=newSqlConnection(Properties.Settings.Default.EPDateConnectionString);
//------------如果选择的是直方图模式,调整视图数据,打开图形显示窗体
if(radioButtonZFT.Checked==true)
{C3TJDrawform=newC3TJDraw();
C3TJDrawform1=newC3TJDraw();
//调整视图数据
cmdString="alterviewviewTJasselect销售年月,sum(销售额)as月销售额fromProductDetailswhere商品名称='"+comboBox2.SelectedItem.ToString()+"'groupby销售年月";
SqlCommandcmd=newSqlCommand(cmdString,conn);
try{conn.Open();cmd.ExecuteNonQuery();}
catch(Exceptionerr){MessageBox.Show(err.Message);
return;}finally{conn.Close();}form.Close();form1.Show();
return;}
//------------如果是常规模式,则在表中显示数据
cmdString="select商品代码,商品名称,销售年月,sum(销售额)as月销售额fromProductDetailswhere商品名称='"+comboBox2.SelectedItem.ToString()+"'groupby商品代码,商品名称,销售年月";SqlDataAdapteradapter=newSqlDataAdapter(cmdString,conn);DataTabletable=newDataTable();
try{adapter.Fill(table);dataGridView1.DataSource=table;}catch(Exceptionerr){MessageBox.Show(err.Message);}}
图形绘制模块的主要代码:
SqlDataAdapteradapter=newSqlDataAdapter();
DataTabletable=newDataTable();
privatevoidC3TJDraw_Load(objectsender,EventArgse)
{//---------------读取视图到表table中,供后续调用
SqlConnectionconn=newSqlConnection(Properties.Settings.Default.EPDateConnectionString);
stringsearch="select*fromviewTJgo";
adapter=newSqlDataAdapter(search,conn);
adapter.Fill(table);}
//-----------绘图--------------
privatevoidC3TJDraw_Paint(objectsender,PaintEventArgse){//----------------设置变量
inth1,h2,w1,w2,wd,hd,yl,xl,yd,xd,rd,clmNB;
decimalrk;intmaxValue=1;intc1,c2,cWidth,cHeight;stringxString;stringyString;
//----------------给变量赋值
h1=20;h2=110;w1=w2=50;wd=30;hd=10;
yl=this.Height-h1-h2;xl=this.Width-w1-w2;
yd=50;xd=50;clmNB=table.Rows.Count;
//
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 销售 管理 智能 分析 系统 本科 论文