资源描述
计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ目目 录录第第 1 章章 概要设计概要设计.11.1 题目的内容与要求 .11.2 数据库概念模型设计 .11.3 总体方案设计 .3第第 2 章章 详细设计详细设计.42.1 数据库逻辑模型设计.42.1.1 商品表(goods).42.1.2 出货清单表(chuhuo) .52.1.3 进货清单表(jinhuo).52.2 系统功能详细设计.52.2.1 商品信息管理模块.62.2.2 进出库操作模块.62.2.3 商品统计模块.72.2.4 系统功能模块.8第第 3 章章 调试分析调试分析.103.1 .NET和 SQLSERVER的连接问题.103.2 父窗体问题 .103.3 服务器问题 .10第第 4 章章 使用说明使用说明.114.1 系统主界面界面 .114.2 商品信息管理界面 .114.3 商品进库界面.134.4 商品统计界面 .14参考文献参考文献.16附附 录(程序清单)录(程序清单).17目目 录录第第 1 章章 概要设计概要设计.11.1 题目的内容与要求 .11.2 数据库概念模型设计 .11.3 总体方案设计 .3第第 2 章章 详细设计详细设计.42.1 数据库逻辑模型设计.42.1.1 商品表(goods).42.1.2 出货清单表(chuhuo) .52.1.3 进货清单表(jinhuo).52.2 系统功能详细设计.52.2.1 商品信息管理模块.62.2.2 进出库操作模块.62.2.3 商品统计模块.72.2.4 系统功能模块.8第第 3 章章 调试分析调试分析.103.1 .NET和 SQLSERVER的连接问题.103.2 父窗体问题 .103.3 服务器问题 .10第第 4 章章 使用说明使用说明.114.1 系统主界面界面 .114.2 商品信息管理界面 .114.3 商品进库界面.134.4 商品统计界面 .14参考文献参考文献.16附附 录(程序清单)录(程序清单).17第 1 章 概要设计1.1 题目的内容与要求题目的内容与要求设计和实现一个商品库存管理系统,要求可以实现对商品信息的添加、删除和修改。以及完成商品的出库和入库操作。要实现相应的统计功能。1.2 数据库概念模型设计计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ根据商品库存管理程序的要求,概念模型一共有五个实体,分别为商品实体,进货实体和出货实体。其中,商品实体包括货物编号、名称、类别、品牌、生产商、生产商地址、生厂商电话、价格、现存数量等七个属性,商品编号是书籍实体的主键;出货实体包括商品编号、数量、日期三个属性;出货实体包括商品编号、出货凭证、日期、数量四个属性。商品库存管理系统的 E-R 图如下图 1.1 所示:图图 1.11.1 商品库存管理系统商品库存管理系统 E-RE-R 图图说明:从上图可以看出,商品实体与进货单实体之间是一对多的关系。商品 E-R 图如图 1.2 所示:图图 1.21.2 商品商品 E-RE-R 图图进货清单 E-R 如图 1.3 所示:计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ图图 1.31.3 进货清单进货清单 E-RE-R 图图出货清单 E-R 图如图 1.4 所示:图图 1.41.4 出货清单出货清单 E-RE-R 图图1.3 总体方案设计总体方案设计根据题目要求,本系统可以分为四个功能模块:商品信息管理模块、进出库模块、商品统计模块、系统功能模块。系统总体模块图如下图 1.4 所示:商品库存管理系统商品库存管理系统商品信息管理模块商品信息管理模块进出库模块进出库模块商品统计模块商品统计模块系统功能模块系统功能模块图图 1.41.4 系统总体模块图系统总体模块图说明:上述模块中,商品信息管理模块实现对商品信息的动态增加、删除、修改功能;进出库模块实现对商品的进库和出库操作;商品统计模块实现对滞销产品的统计、商品进出货的统计;系统计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ功能模块实现系统的关闭和版权提示功能。第 2 章 详细设计2.1 数据库逻辑模型设计数据库逻辑模型设计商品库存管理系统的 E-R 图表明商品实体与进出货清单实体之间是多对多的关系,转换后的关系模式有三个,分别是商品、进货清单和出货清单,具体属性如下所示:1)商品(商品编号,商品名称,商品类别,品牌,生产商,商城商电话,生厂商地址,价格,库存量)此为商品实体对应的关系模式。2)出货清单(商品编号,出货量,日期)此为出货清单实体对应的关系模式。3)进货清单(商品编号,进货凭证,进货量,日期)此为进货清单实体对应的关系模式。 2.1.1 商品表(商品表(goods)商品表如下表 2.1 所示:表表 2.12.1 书籍表书籍表列名列名数据类型数据类型长长度度是是否否允允许许空空说说明明商品编号数字4No主键商品名Nvarchar(100)50No类别Nvarchar(100)20No品牌计算机毕业设计 计算机课Nvarchar(100)50No程设计代做计算机毕业设计 代做计算机课程设计QQ生产商地址Nvarchar(100)20No生厂商电话Nvarchar(100)100No价格FloatNo库存量Floatyes说明:此表用于存放商品基本信息,包括商品编号、商品名、品牌、生产商地址、生厂商电话、库存量、价格七个属性。其中的商品编号是该表的主键,其他的属性都用于商品信息的描述。2.1.2 出货清单表(出货清单表(chuhuo)订单表如下表 2.2 所示:表表 2.22.2 订单表订单表列名列名数据类型数据类型长度长度是否允许空是否允许空说明说明商品编号数字No出货量FloatNo日期Nvarchar(50)50No说明:用于存放出货清单基本信息,包括商品编号、出货量和日期三个属性。其中商品编号是该表的主键,其他的属性都用于商品信息的描述。2.1.3 进货清单表(进货清单表(jinhuo)进货清单表如下表 2.3 所示:表表 2.32.3 订购表订购表列名列名数据类型数据类型长度长度是否允许空是否允许空说明说明商品编号Int20No进货量flaot20No进货凭证Nvarchar50No日期Nvarchar20No说明:此表用于进货信息,包括商品编号、商品进货量、进货凭证、日期;商品编号是商品表中的编号的外键。2.2 系统功能详细设计系统功能详细设计整个程序的实现过程分为四个模块,商品信息管理模块、进出库操作模块、商品统计模块和系统功能模块。各模块的功能以及具体的设计情况如下所述:2.2.1 商品信息管理模块商品信息管理模块商品信息管理模块的功能是:对商品的基本信息进行添加、删除、修改等操作。该模块流程图如下所示。图图 2.12.1 商品信息管理模块流程图商品信息管理模块流程图2.2.2 进出库操作模块进出库操作模块进出库模块的功能是:执行进出库操作,记录进出库操作,并同时增加或减少商品表中相应商品的数量。进库和出库操作流程基本相同,下面给出进库操作的流程图:图图 2.22.2 商品进库流程图商品进库流程图2.2.3 商品统计模块商品统计模块该模块的功能是实现对库存商品的销售量进出库情况的统计。现以查看滞销产品为例介绍该模块的流程图:图图 2.32.3 查看滞销产品流程图查看滞销产品流程图2.2.4 系统功能模块系统功能模块该模块的功能是实现系统的退出操作,在系统要退出的时候提示用户是否真的想要退出系统。并由版权提示功能。执行操作退出系统是否退出NY开始结束图图计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ2.42.4 退出系统流程图退出系统流程图第 3 章 调试分析3.1 .Net.Net 和和 SQLserverSQLserver 的连接问题的连接问题因为整个程序的实现需要与数据库相连接,所以我遇到的最大问题是连接数据库。对数据库的操作占了相当大的比例,数据库的操作效率直接影响了整个系统的效率。具体的解决方法有以下几个:1. 建立数据库连接池,对数据库进行有效使用。2. 使用 Dbhelper 类,集中完成数据库操作的问题。3.2 父窗体问题父窗体问题在程序的编写过程中,由于本软件的主界面是一个父窗体,其他的窗体是主窗体的子窗体,刚开始不知道怎么操作。经过查找资料才知道,需要将父窗体的IsMdiContainer设为True,然后再将子窗体的 child.MdiParent=this,这样设置才行。计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ3.3 服务器问题服务器问题由于本系统通过网页的形式进行工作,并且要求动态显示数据,因此使用IIS 服务器。IIS 服务器的工作端口默认为 80,但安装了多个版本的服务器后,端口地址存在混乱,因此将主服务器的端口地址设为 8080,以便直接启动浏览器后输入网址直接访问。第 4 章 使用说明4.1 系统主界面界面系统主界面界面图图 4. 1 主界面界面主界面界面4.2 商品信息管理界面商品信息管理界面图图 4.2 商品信息添加界面商品信息添加界面下面是商品信息修改界面。图图 4.3 收货人界面收货人界面下面是商品信息删除界面。图图 4.4 订单界面订单界面4.3 商品进库界面商品进库界面图图 4.5 商品进库界面商品进库界面下图是商品出库界面。图图 4.6 商品出库界面商品出库界面4.4 商品统计界面商品统计界面图图 4.7 滞销商品统计界面滞销商品统计界面图 4.4 说明:滞销商品统计界面。下图是商品订货信息统计界面图图 4.8 商品订货信息界面商品订货信息界面下图是系统的退出界面计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ图图 4.9 系统退出界面系统退出界面参考文献1 王珊,萨师煊 . 数据库系统概论M, 北京:高等教育出版社,20022 徐聪葱, ASP.Net 编程从入门到实践M, 北京: 清华大学出版社, 20103 陈华, Ajax 从入门到精通 M, 北京: 清华大学出版社, 20084 王山 等, .Net 网站开发典型模块与实例精讲M, 北京: 电子工业出版社,20065 张小豪, 软件工程导论M, 北京: 清华大学出版社, 2003附 录(程序清单)Dbhelper 类类using System;using System.Collections.Generic;using System.Text;using System.Collections;using System.Data;using System.Data.SqlClient;using System.Configuration;namespace inventory class Dbhelper public static string connectionString = Data Source=.sqlexpress;Initial Catalog=inventory;User Id=sa;Password=123456; #region 通用方法 / 数据连接池 private SqlConnection con; / / 返回数据库连接字符串 / / public static String GetSqlConnection() String conn = connectionString; return conn; #endregion #region 执行sql字符串 / / 执行不带参数的SQL语句 / / / public static int ExecuteSql(String Sqlstr) String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr) SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = Sqlstr; conn.Open(); int num=cmd.ExecuteNonQuery(); conn.Close(); return num; 计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ / / 执行带参数的SQL语句 / / SQL语句 / 参数对象数组 / public static int ExecuteSql(String Sqlstr, SqlParameter param) String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr) SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = Sqlstr; cmd.Parameters.AddRange(param); conn.Open(); int num=cmd.ExecuteNonQuery(); conn.Close(); return num; / / 返回DataReader / / / public static SqlDataReader ExecuteReader(String Sqlstr) String ConnStr = GetSqlConnection(); SqlConnection conn = new SqlConnection(ConnStr);/返回DataReader时,是不可以用using()的 try SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = Sqlstr; conn.Open(); return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);/关闭关联的Connection catch /(Exception ex) return null; / / 执行SQL语句并返回数据表 / / SQL语句 / public static DataTable ExecuteDt(String Sqlstr) String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr) SqlDataAdapter da = new SqlDataAdapter(Sqlstr, conn); DataTable dt = new DataTable(); conn.Open(); da.Fill(dt); conn.Close(); return dt; / / 执行SQL语句并返回DataSet / / SQL语句 / public static DataSet ExecuteDs(String Sqlstr) String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr) SqlDataAdapter da = new SqlDataAdapter(Sqlstr, conn); DataSet ds = new DataSet(); conn.Open(); da.Fill(ds); conn.Close(); return ds; #endregion #region 数据库连接和关闭 / / 打开连接池 / private void Open() / 打开连接池 if (con = null) /这里不仅需要using System.Configuration;还要在引用目录里添加 con = new SqlConnection(GetSqlConnection(); con.Open(); / / 关闭连接池 / public void Close() if (con != null) con.Close(); / / 释放连接池 / public void Dispose() / 确定连接已关闭 if (con != null) con.Dispose(); con = null; #endregion 商品信息添加界面代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace inventory public partial class addGoods : Form public addGoods() InitializeComponent(); private void button1_Click(object sender, EventArgs e) string mingcheng, changzhi, dianhua, scchengjia, leibie,pinpai,jiage; jiage = textBox6.Text.Trim(); try float jia = float.Parse(jiage); 计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ catch (System.Exception ed) MessageBox.Show(您输入的价格有误,错误); return; mingcheng = textBox1.Text.Trim(); leibie = comboBox1.Text.Trim(); changzhi = textBox4.Text.Trim(); dianhua = textBox5.Text.Trim(); scchengjia = textBox3.Text.Trim(); pinpai = textBox2.Text.Trim(); string sql = string.Format(insert into goods values(0,1,2,3,4,5,6,0),mingcheng,leibie,pinpai,scchengjia,changzhi,dianhua,jiage); try int resint = 0; resint=Dbhelper.ExecuteSql(sql); if (resint=0) MessageBox.Show(产品信息未存储请您核对相关信息,警告); else MessageBox.Show(产品信息已成功保存, 提示); catch (System.Exception fe) MessageBox.Show(系统发生异常,请联系管理员,异常); private void button2_Click(object sender, EventArgs e) this.Dispose(); private void addGoods_Load(object sender, EventArgs e) 课程设计总结:课程设计总结:通过此次课程设计,使我更加扎实的掌握了有关软件开发方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手编写,使我们掌握的知识不再是纸上谈兵。 过而能改,善莫大焉。在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取。最终的调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!计算机毕业设计 计算机课程设计代做计算机毕业设计 代做计算机课程设计QQ指导教师评语:指导教师(签字): 年 月 日课程设计成绩
展开阅读全文