订单式销售管理系统课程设计报告.doc_第1页
订单式销售管理系统课程设计报告.doc_第2页
订单式销售管理系统课程设计报告.doc_第3页
订单式销售管理系统课程设计报告.doc_第4页
订单式销售管理系统课程设计报告.doc_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

唐山学院课程设计 目 录1 现行系统概述22 系统分析32.1需求分析32.2可行性研究32.3系统的开发方法的选择32.4组织结构与功能分析42.5业务流程分析52.6数据与数据流程分析62.7 数据分析63 系统设计93.1系统总体结构设计93.2数据结构与数据库设计123.3系统物理配置方案设计134系统实施144.1登陆界面144.2系统主界面165结束语28参考文献301现行系统概述 本门窗企业早期的销售管理单纯依靠人工来完成,耗时耗力,且效率不高,严重影响了企业的发展,不能及时对市场及客户的要求做出迅速反应调整生产,而随着科技日益发展及信息化浪潮的日益临近,企业经营管理机制正在发生着根本性的变化,特别是处于激烈市场竞争环境下的企业,如果想要在日新月异的市场变化中求得生存,就必须有效地进行企业内部改革和加强企业管理。借助现代信息技术和管理理论,建立企业管理信息系统势在必行。因此,本门窗企业开发订单式销售管理系统,以求提高企业的管理效率,增强企业的竞争力。2系统分析2.1 需求分析 随着科技的发展,信息化在企业中显得尤为重要。随着信息量的日益增多,单纯的人工处理已经不能满足企业快速发展的需要,企业每天都需要接受各式订单,如果仅仅依靠人工处理与统计分配生产,在人工协调生产与需求的关系,必然会出现各种各样的错误,加大企业工作人员的工作量,降低企业的生产效率,企业的发展也必然受阻。在这种情况下,开发管理系统,就显得尤为重要,是企业目前迫切的需求。2.2可行性研究此次信息系统开发是对本学期所学专业知识的一次综合检验与提高,在刘印平老师的指导下,我和我得合作者在机房共同开发订单式管理系统。本学期,我已经学习了管理信息系统,对系统开发的流程及所需知识及先关软件有了一定了解,并且对数据库、数据结构、C语言、C#及ASP.NET都有一定的了解,这些相关知识也为本次系统的开发提供了可能,再者教材中的各种系统开发范例也为我们的开发做了很好的指导,综合考虑,完全有能力开发出此管理系统。2.3系统的开发方法的选择 我们选择结构化开发方法,即用系统工程的思想和工程化的方法,按照用户至上的原则,自顶向下整体分析与设计和自底向上逐步实施的系统开发过程。是组织、管理和控制信息系统开发过程的一种基本框架。其基本思想:在系统分析时,采用自顶向下、逐层分解,由抽象到具体的逐步认识问题的过程;在系统设计的时候,先考虑系统整体的优化,再考虑局部的优化问题;在系统实施的时候,则坚持自底向上,先局部后整体,通过标准化模块的连接形成完整的系统。开发过程主要包括以下几个阶段:系统规划阶段、系统分析阶段、系统设计阶段、系统实施阶段、系统运行与维护阶段,每个阶段都有明确的任务和目标,这样整个开发过程容易调整和控制。2.4 组织结构与功能分析数据统计信息管理经销商业绩产品销量客户信息订单式销售管理系统经销商信息产品信息订单信息图2-1 组织结构图2.5 业务流程分析本系统的业务流程主要描述如下:厂家事先录入产品信息,各地经销商根据产品信息向客户销售产品并向厂家提交订货单,同时经销商生成客户信息。之后厂家审核订货单,合格则生成合格订货单,不合格则退给经销商重新填写,此时生成经销商信息厂家存档,并将合格的订单送往车间生产,生产结束后通过物流将产品发送给经销商。业务流程图如下:图2-2 业务流程图2.6数据与数据流程分析数据流程分析是把数据在组织内部的流动情况抽象地独立出来, 舍去了具体的组织机构等,以发现和解决数据流中的问题。员工将产品信息和客户信息录入,生成相应的产品档案和客户档案,而订单记录建立了客户和产品的联系,并存储这些记录。其数据流程图如图2-3所示图2-3 数据流程图2.7数据分析数据字典:根据系统的数据流程图,得到数据流、数据存储、加工和数据项的数据字典,数据字典详细描述了数据流程图中各个项,有助于操作员进一步了解系统的逻辑功能和结构。举例如下: (1)数据项条目:数据项名称:订购日期简述:客户订购商品的日期别名:无类型:日期取值范围:1000-01-01到9999-12-31数据项名称:订单编号简述:用户此次订货在系统内部的定义别名:订单编号类型:字符型取值范围:000000到999999数据项名称:客户编号简述:客户在经销商编号别名:客户编号类型:字符型取值范围:000000到999999(2)数据流条目:数据流名称:客户信息简述:对客户的基本信息进行介绍数据流来源:订单记录数据流去向:客户档案数据流组成:客户编号+客户姓名+联系方式+客户地址+备注数据流量:100次/日高峰流量:200次/日数据流名称:产品信息数据流来源:厂家数据流去向:产品档案简述:厂家将各产品信息写入系统,以便查询使用数据流组成:产品号+产品名称+主要材料+备注数据流量:100次/日高峰流量:200次/日数据流名称:经销商信息简述:对经销商的基本信息进行介绍数据流来源:厂家数据流去向:经销商档案数据流组成:经销商编号+经销商姓名+联系方式+经销商地址+备注数据流名称:订单信息简述:客户发出订货的证明数据流来源:经销商数据流去向:销售额统计数据流组成:订单号+客户姓名+联系方式+客户地址+产品号+产品名称+主要材料数据流量:100次/日高峰流量:200次/日(3)数据存储条目:数据存储名称:客户档案简述:进一步整理客户信息,一边用于产品维护数据存储组成:客户编号+客户姓名+性别+联系方式+客户地址+产品编号+产品数量+备注关键字:客户编号数据存储名称:产品档案简述:厂家输入产品信息生成产品档案,用于产品查询数据存储组成:产品号+产品名称+主要材料+备注关键字:产品型号数据存储名称:订单记录简述:用于保存客户填写的订单信息数据存储组成:订单号+客户姓名+联系方式+客户地址+产品号+产品名称+主要材料关键字:订单号数据存储名称:销售统计表简述:将统计后的销售信息存储下来,用于厂家和经销商的查询数据存储组成:销售额统计 关键字:产品编号(4)处理逻辑条目:处理逻辑名称:销售统计简述:对销售情况进行统计输入数据流:订单信息处理:根据订单信息,找出销售状况,分析出各种产品的销售状况,经销商业绩输出数据流:销售统计表3 系统设计3.1系统总体结构设计订单式销售管理系统的系统模块结构图见图3-1:图3-1 系统模块结构图3.2数据结构与数据库设计3.2.1数据库的概念结构设计概念结构设计是按用户的观点对数据和信息建模,而概念模型的最常用的表示方法是实体-联系方法(简称E-R图),该系统的而图如图3-2所示:图3-2 E-R图3.2.2 数据库的表结构定义用户信息表:存放用户的相关信息。如表3-3所示:表3-3 用户信息表字段名属性备注Userid UserpwdUservelVarchar(10)Varchar(10)Varchar(10)主键产品信息表:存放产品的相关信息。如表3-4所示:表3-4 产品信息表字段名属性备注产品型号产品名称规格描述备注Char(50)Varchar(50)char(50)Varchar(50)主键经销商信息表:存放经销商的相应信息。如表3-5所示:表3-5经销商信息表字段名属性备注经销商编号经销商姓名性别联系电话住址备注Char(6)Varchar(8)Char(2)Char(15)Varchar(50)Varchar(100)主键客户信息表:用于存放客户的相应信息。如表3-6所示:表3-6客户信息表字段名属性备注经销商编号经销商姓名性别联系电话客户地址备注Char(6)Varchar(8)Char(2)Char(15)Varchar(100)Varchar(100)主键订单信息表:显示记录客户、产品、经销商之间的联系。如表3-7所示:表3-7订货单信息表字段名属性备注订单号客户编号经销商编号产品型号数量总价签订日期交货日期备注Char(6)Char(6)Char(6)Char(50)IntMoneyDatetimeDatetimeVarchar(100)主键外键外键外键3.2.3数据库中表的实现此系统的数据关系图如图3-3所示:图3-3 数据关系图3.3系统物理配置方案设计(1)硬件选择。系统中计算机能够运行Windows XP 以上操作系统即可。(2)操作系统。Windows XP以上操作系统。(3)开发工具。Visual Studio 2010(C#)。(4)数据库管理系统。SQL Server2005数据库管理系统及其使用工具。4系统实施4.1登陆界面 登录页面的功能主要是供合法的用户根据自己的用户名、用户密码进行登录。订单式销售管理系统登录模块运行的结果如图4-1所示。图4-1 登陆界面登陆界面代码如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace 订单式销售管理系统 public partial class FrmLogin : Form public FrmLogin() InitializeComponent(); fl = this; private void button2_Click(object sender, EventArgs e) this.Close();/退出登录模块 private void button1_Click(object sender, EventArgs e) if (textBox1.Text.Trim() = | textBox2.Text.Trim() = ) MessageBox.Show(用户名或密码不能为空!, 登录提示); else string SqlText = select * from UserInfo where Userid= + this.textBox1.Text + and Userpwd= + this.textBox2.Text + ; DataAccess DA = new DataAccess(); if (DA.IsRead(SqlText) = true) string mySql = select * from UserInfo where Userid= + this.textBox1.Text + ; DataTable dt = DA.ExeSQLdt(mySql); this.Competence = dt.Rows0Uservel.ToString(); FrmLogin.Can = true; this.Close(); else MessageBox.Show(用户名或密码错误,请重新输入!, 登录提示); 4.2系统主界面主界面包含系统管理、产品信息管理、客户信息管理、经销商信息管理、订货单信息管理、数据汇总这几个模块,如图4-2所示。图4-2 系统主界面4.3部分功能模块设计界面及部分代码(1) 部分功能模块界面如下:产品信息管理界面如下:客户信息管理界面如下:经销商信息信息管理界面如下:经销商信息管理界面如下:(2) 主要代码如下: 数据库连接代码 class DataAccess SqlConnection myconn; static string Str = Server =CHENYING-PC;Database =订单式销售管理系统;Uid = sa;Pwd = 123; public SqlConnection Conn = new SqlConnection(Str); public DataAccess() myconn = new SqlConnection(Str); myconn.Open(); 修改密码代码 private void Edit_bt_Click(object sender, EventArgs e)/执行修改密码功能 if (this.textboxOld.Text = ) | (this.textboxNew.Text = ) | (this.textboxConfigNew.Text = ) MessageBox.Show(请输入完整信息!,修改提示!); return; if (this.textboxNew.Text != this.textboxConfigNew.Text) MessageBox.Show(确认密码失败,请重新输入!, 修改提示!); return; else DataAccess DAEdit = new DataAccess(); string SqlTextUpdate = update UserInfo set Userpwd= + this.textboxNew.Text.Trim() + where Userid= + this.textboxUserName.Text + ; DAEdit.ExeSQL(SqlTextUpdate); MessageBox.Show(修改密码成功!, 修改提示!); DataAccess类代码using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.IO;using System.Data;using System.Data.SqlClient;namespace 订单式销售管理系统 class DataAccess SqlConnection myconn; static string Str = Server =CHENYING-PC;Database =订单式销售管理系统;Uid = sa;Pwd = 123; public SqlConnection Conn = new SqlConnection(Str); public DataAccess() myconn = new SqlConnection(Str); myconn.Open(); public int ExeSQL(string sql) SqlCommand cmd = new SqlCommand(sql, this.myconn); try cmd.ExecuteNonQuery(); return 0; catch (System.Data.SqlClient.SqlException ex) MessageBox.Show(ex.Message.ToString(); return -1; finally cmd.Dispose(); this.myconn.Close(); / 判断数据库是否有记录,有记录则返回真,无则返回假public bool IsRead(string sql)SqlCommand cmd = new SqlCommand(sql,this.myconn);SqlDataReader dr = cmd.ExecuteReader();tryif(dr.Read()return true;elsereturn false;catch(System.Data.SqlClient.SqlException ex) MessageBox.Show(ex.Message.ToString(); return false;finallydr.Close();cmd.Dispose();this.myconn.Close(); public DataTable ExeSQLdt(string sql)try SqlDataAdapter da = new SqlDataAdapter(sql, myconn);DataTable dt = new DataTable();da.Fill(dt);return dt;catch(System.Data.SqlClient.SqlException ex) MessageBox.Show(ex.Message.ToString(); return null ;finally this.myconn.Close(); 经销商信息添加代码 private void button1_Click(object sender, EventArgs e)/添加经销商信息 if (textBox1.Text.Trim() = | textBox2.Text.Trim() = | textBox3.Text.Trim() = | textBox4.Text.Trim() = | Remarks_txt.Text.Trim() = | comboBox1.Text.Trim() = ) MessageBox.Show(请输入完整信息!, 输入提示); else if(订单式销售管理系统.子窗体.FrmJingxiaoshangInfo.JingxiaoshangID = insert) string SqlText = insert into 经销商信息表 (经销商编号,经销商姓名,性别,联系电话,住址,备注) values( + this.textBox1.Text + , + this.textBox2.Text + , + boBox1.Text + , + this.textBox3.Text + , + this.textBox4.Text + , + this.Remarks_txt.Text + ); DataAccess dataaccess = new DataAccess(); DataAccess DA = new DataAccess(); DA.ExeSQL(SqlText); 订单式销售管理系统.子窗体.FrmJingxiaoshangInfo.JingxiaoshangInfo.Enabled = true; 订单式销售管理系统.子窗体.FrmJingxiaoshangInfo.JingxiaoshangInfo.DBDataGrid(); this.Close(); MessageBox.Show(添加成功!, 添加提示!); 经销商信息查询代码private void button1_Click(object sender, EventArgs e)/执行查询经销商信息功能 string mystr, mysql; mystr = Server =CHENYING-PC;Database =订单式销售管理系统;Uid = sa;Pwd = 123; SqlConnection myconn = new SqlConnection(); myconn.ConnectionString = mystr; myconn.Open(); myds.Clear(); mysql = select 经销商编号,经销商姓名,性别,联系电话,住址,备注 from 经销商信息表 where 经销商编号 like % + textBox1.Text.Trim() + %; myda = new SqlDataAdapter(mysql, myconn); myda.Fill(myds, 经销商信息表); dataGridView1.DataSource = myds.Tables经销商信息表; 经销商信息修改代码 private void button3_Click(object sender, EventArgs e)/执行经销商信息修改功能 DialogResult ID = MessageBox.Show(您确定要修改经销商编号为+dataGridView1.SelectedCells0.Value.ToString()+的信息么?, 修改提示!, MessageBoxButtons.YesNo); if (ID = DialogResult.Yes) SqlCommandBuilder mycmdbuilder = new SqlCommandBuilder(myda); if (myds.HasChanges() try myda.Update(myds, 经销商信息表); MessageBox.Show(修改成功,修改提示!); catch (Exception ex) MessageBox.Show(ex.Message); MessageBox.Show(修改失败,修改提示!); else MessageBox.Show(取消修改!, 修改提示!, MessageBoxButtons.OK, MessageBoxIcon.Information); 经销商信息添加代码 private void button1_Click(object sender, EventArgs e)/添加经销商信息 if (textBox1.Text.Trim() = | textBox2.Text.Trim() = | textBox3.Text.Trim() = | textBox4.Text.Trim() = | Remarks_txt.Text.Trim() = | comboBox1.Text.Trim() = ) MessageBox.Show(请输入完整信息!, 输入提示); else if(订单式销售管理系统.子窗体.FrmJingxiaoshangInfo.JingxiaoshangID = insert) string SqlText = insert into 经销商信息表 (经销商编号,经销商姓名,性别,联系电话,住址,备注) values( + this.textBox1.Text + , + this.textBox2.Text + , + boBox1.Text + , + this.textBox3.Text + , + this.textBox4.Text + , + this.Remarks_txt.Text + ); DataAccess dataaccess = new DataAccess(); DataAccess DA = new DataAccess(); DA.ExeSQL(SqlText); 订单式销售管理系统.子窗体.FrmJingxiaoshangInfo.JingxiaoshangInfo.Enabled = true; 订单式销售管理系统.子窗体.FrmJingxiaoshangInfo.JingxiaoshangInfo.DBDataGrid(); this.Close(); MessageBox.Show(添加成功!, 添加提示!); 调用视图代码 private void button1_Click(object sender, EventArgs e)/执行查询订货单信息记录功能 string mystr, mysql; mystr = Server =CHENYING-PC;Database =订单式销售管理系统;Uid = sa;Pwd = 123; SqlConnection myconn = new SqlConnection(); myconn.ConnectionString = mystr; myconn.Open(); myds.Clear(); mysql = select * from v_Order where 客户姓名 like % + textBox1.Text.Trim() + %;/调用数据库中的视图v_Ordermyda = new SqlDataAdapter(mysql, myconn); myda.Fill(myds, v_Order); dataGridView1.DataSource = myds.Tablesv_Order; 调用存储过程代码 DataAccess DA = new DataAccess(); SqlCommand insertCommand = DA.Conn.CreateCommand(); insertCommand.CommandText = execute pro_UserInfo Userid,Userpwd,Uservel;/调用数据库中的存储过程添加用户信息 insertCommand.Parameters.Add(Userid, SqlDbTyp

温馨提示

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

评论

0/150

提交评论