已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计报告第1章 绪论1.1 毕业设计的目的通过本次毕业设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据库原理毕业中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。1.2 毕业设计的背景和意义1.2.1毕业设计的背景20世纪90年代后期特别是近几年,我国的超市产业飞速发展,其经营模式更为复杂,旧的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。超市的数据和业务越来越庞大,而计算机就是一种高效的管理系统,这就需要我们把超市的管理与计算机结合起来,从而超市管理系统应运而生。依靠现代化的计算机信息处理技术来管理超市,节省了大量的人力、物力,改善了员工的并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。1.2.2 毕业设计的意义“数据库毕业设计”的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。为此,本毕业结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。学生对此热情高,实际收获大,效果好。通过课堂学习和参与相关项目设计,学生对书本支持有了深刻的理解,实践性教学取得了良好效果。1.3 毕业设计环境操作系统:Windows xp/vista开发软件:Microsoft Visual Studio 2005数据库:Microsoft SQL Server 2005第2章 系统需求分析随着人们生活水平的不断提高,对于物质的需求也越来越高,而超市作为日常生活用品聚集的场所,随着全球各种超市的数目的不断增加,规模不断增大,其管理难度也相应的增加,而为了适应当今信息化发展的时代,一套完整的超市管理系统显得尤为重要。2.1 问题的提出在信息化高速发展的今天,超市商品管理的信息化管理已成为必不可缺的一部分,但是目前的大多是超市管理系统应用难度较高,许多工作需要技术人员配合才能完成,角色分工不明确;改版工作量大,系统扩展能力差,应用时更是降低了灵活性,这就使得一套完善的、能够正常工作的商品管理系统应运而生。2.2 可行性分析系统的可行性分析是对课题的通盘考虑,是系统开发者进行进一步工作的前提,是系统设计与开发的前提与基础。系统的可行性分析可以使系统开发者尽可能早的估计到课题开发过程中的困难,并在定义阶段认识到系统方案的缺陷,这样就能花费较少的时间和精力,也可以避免许多专业方面的困难。所以,系统的可行性分析在整个开发过程中是非常重要的。2.2.1 经济可行性分析因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的。2.2.2 技术可行性分析本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个超市管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。因此,可以设计该系统的数据流程图,建立数据字典。2.3 系统的设计目标本系统主要包括四大模块,分别是资料管理模块,入库管理模块,出库管理模块,库存管理模块。每个模块的功能如下:1. 资料管理模块功能:(1)实现商品信息的查询;(2)实现商品信息的更新,包括增加、删除、修改功能;(3)实现供货商信息的查询;(4)实现供货商信息的更新,包括增加、删除、修改功能。2. 入库管理模块功能:(1)入库单;(2)商品入库。(3)入库查询3. 出库管理模块功能:(1) 出库单;(2)商品出库。(3) 出库查询4. 库存管理模块功能:(1)实现商品库存信息的维护;(2)库存盘点第3章 系统开发的技术背景3.1 开发技术及运行环境3.1.1 系统所采用的开发技术通过权衡对各种编程语言和数据库使用的熟练程度,本系统选用Microsoft Visual Studio 2005作为前台开发工具,后台数据库采用SQL Server 2005,整体设计以软件工程思想为指导思想,力求开发一个实用性强、操作简单且功能完整的超市管理系统。3.1.2 系统运行环境客户端操作系统:Windows NT/2000/XP或更高版本服务器操作系统:Windows XP 数据库:Microsoft SQL Server 2005前台:Microsoft Visual Studio 2005第4章 系统分析与总体设计4.1 系统结构框架一般的超市管理系统,主要由五大模块组成,即商品信息管理模块,资料管理模块,入库管理模块,出库管理模块,库存管理模块,此系统也不例外,主要有此五大模块组成。4.2 系统功能设计 (3) 出库查询4. 库存管理模块功能:(1)实现商品库存信息的维护;(2)库存盘点第5章 系统数据库设计5.1数据库表设计5.1.1 用户登录表5.1.2 商品信息表5.1.3 供货商信息表5.1.4 出库信息表5.1.5 库存信息表第6章 系统功能模块实现6.1 系统登录模块用户登录模块在本系统的首页。用户输入用户名和密码后,系统进行验证,验证通过进入程序的主界面。界面如图6-1所示。图6-1 用户登录界面主要实现代码如下: public partial class frmLog : Form / / 功能:登陆界面的初始化 / 作者:小鼠 / 日期:9-17 / public frmLog() InitializeComponent(); / / 功能:当用户单击重置按钮时清空控件,并且使txtName控件获取焦点 / 作者:小鼠 / 日期:9-17 / private void btnReset_Click(object sender, EventArgs e) this.txtName.Text = ; this.txtPwd.Text = ; this.txtName.Focus(); / / 功能:当用户单击登陆按钮时,进行登陆验证 / 作者:小鼠 / 日期:9-17 private void btnLogin_Click(object sender, EventArgs e) if (txtName.Text = ) MessageBox.Show(用户名不能为空!); txtName.Focus(); return; if (txtPwd.Text = ) MessageBox.Show(密码不能为空!); txtPwd.Focus(); return; D = txtName.Text;/把用户名和密码赋值给全局对象,供以后窗体使用 Duixiang.pwd = txtPwd.Text; YG_InfoMethod ygmethod = new YG_InfoMethod(); if (ygmethod.YG_InfoFind(txtName.Text,txtPwd.Text,1)=1)/查找用户名和密码,如果找到,进入主窗体 this.Hide(); frmMain frm = new frmMain(txtName.Text); frm.Show(); else MessageBox.Show(登录失败!); txtName.Focus(); private void txtPwd_KeyDown(object sender, KeyEventArgs e)/当在txtPwd控件上按回车键时,自动触发登陆按钮的单击事件 if (e.KeyCode = Keys.Enter) this.btnLogin.PerformClick(); 6.2 商品信息管理模块此模块进行对商品信息的录入,能够对商品进行合理的管理,界面如图6-2所示。图6-2 商品信息管理界面主要实现代码如下: public partial class frmGoods : Form SpClass_Method spclass = new SpClass_Method(); SP_Info spinfo = new SP_Info(); SP_InfoMethod spmethod = new SP_InfoMethod(); public frmGoods() InitializeComponent(); private void frmGoods_Load(object sender, EventArgs e) spclass.fillclass(treeView1, imageList1); private void button1_Click(object sender, EventArgs e) SPM.frmclass_Add add = new 超市库存管理系统.SPM.frmclass_Add(); add.Owner = this; add.ShowDialog(); public void treeView1_AfterSelect(object sender, TreeViewEventArgs e) if (this.treeView1.SelectedNode.Text = 所有商品) this.dataGridView1.DataSource = spclass.SP_InfoFind(, 2).Tables0.DefaultView; else dataGridView1.DataSource = spclass.SP_InfoFind(this.treeView1.SelectedNode.Text, 1).Tables0.DefaultView; private void button2_Click(object sender, EventArgs e) string str = spmethod.find(this.treeView1.SelectedNode.Text, 2); if (spmethod.findClass_Id(str) = 1) MessageBox.Show(该类别下有记录,不能删除, 提示框, MessageBoxButtons.OK, MessageBoxIcon.Warning); else if (spclass.Class_Del(this.treeView1.SelectedNode.Text) = 1) MessageBox.Show(您确定要删除次类别吗?, 提示框, MessageBoxButtons.OK, MessageBoxIcon.Information); spclass.fillclass(treeView1, imageList1); private void tospAdd_Click(object sender, EventArgs e) SPM.frm_Add add = new 超市库存管理系统.SPM.frm_Add(); add.Owner = this; add.ShowDialog(); private void tospUpdate_Click(object sender, EventArgs e) SPM.frm_Update update = new 超市库存管理系统.SPM.frm_Update(); update.Owner = this; update.ShowDialog(); private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) SPM.frm_Update update= new 超市库存管理系统.SPM.frm_Update(); update.Owner = this; update.ShowDialog(); private void toolStripButton1_Click(object sender, EventArgs e) spinfo.strSP_Id = this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); if (MessageBox.Show(你确认要删除此记录吗!, 提示框, MessageBoxButtons.OKCancel, MessageBoxIcon.Information) = DialogResult.OK) if (spmethod.SP_InfoDel(spinfo)=1)/执行供应商方法类中的删除方法 MessageBox.Show(删除成功!, 提示框, MessageBoxButtons.OK, MessageBoxIcon.Information); this.dataGridView1.DataSource = spmethod.SP_InfoFind(, 4).Tables0.DefaultView; else MessageBox.Show(删除失败!, 提示框, MessageBoxButtons.OK, MessageBoxIcon.Error); private void tospAll_Click(object sender, EventArgs e) this.dataGridView1.DataSource = spmethod.SP_InfoFind(, 4).Tables0.DefaultView; private void tospExit_Click(object sender, EventArgs e) this.Close(); private void tospSearch_Click(object sender, EventArgs e) SPM.frm_Search search = new 超市库存管理系统.SPM.frm_Search(); search.Owner = this; search.ShowDialog(); 6.3 供货商信息管理模块此模块有对供货商的添加,修改,删除等功能,能够对供货商进行合理的管理。界面如图6-3所示。图6-4 供货商管理界面主要实现代码如下: public partial class frmGys : Form #region 构造函数 public frmGys() /frmGYs类的构造函数,初始化窗体 InitializeComponent(); Duixiang.gysinfo = new GYS_Info();/实例化gysinfo全局对象 Duixiang.gysmethod = new GYS_InfoMethod();/实例化gysmethod全局对象 #endregion #region 窗体的load方法 private void frmGys_Load(object sender, EventArgs e)/当窗体载入时,执行初始化数据控件 Duixiang.datagv = this.dataGridView1;/把datagridview对象升级位全局对象 Duixiang.dataset = Duixiang.gysmethod.GYS_InfoFind(,5);/调用供应商方法类中的供应商查询方法,并把返回值付给全局对象dataset Duixiang.datagv.DataSource = Duixiang.dataset.Tables0.DefaultView;/将数据集指定位数据源 initObject();/执行initObject方法 #endregion #region 自定义方法 给全局对象赋值 public void initObject() /为全局对象赋值 try Duixiang.gysinfo.gys_Id = dataGridView1.SelectedCells0.Value.ToString();/将datagridview控件中列值付给全局对象,以便下一个窗体使用 Duixiang.gysinfo.gys_Name = dataGridView1.SelectedCells1.Value.ToString(); Duixiang.gysinfo.gys_Adr = dataGridView1.SelectedCells2.Value.ToString(); Duixiang.gysinfo.gys_Tel = dataGridView1.SelectedCells3.Value.ToString(); Duixiang.gysinfo.gys_Fax = dataGridView1.SelectedCells4.Value.ToString(); Duixiang.gysinfo.gys_Indt= dataGridView1.SelectedCells5.Value.ToString(); catch (Exception e) MessageBox.Show(e.Message); #endregion #region 单击窗体上方按钮时所执行的方法,包括添加,修改,查找,退出,删除,单击数据控件的单元格,全部显示 private void tospAdd_Click(object sender, EventArgs e)/当单击“添加”按钮时,调出添加窗体 GYSM.frmAdd add = new 超市库存管理系统.GYSM.frmAdd(); add.ShowDialog(); private void tospUpdate_Click(object sender, EventArgs e)/当单击”修改“按钮时,调出修改窗体 initObject(); frmUpdate update = new frmUpdate(); update.ShowDialog(); private void tospSearch_Click(object sender, EventArgs e)/当单击”查找“按钮时,调出查找窗体 GYSM.frmSearch search = new 超市库存管理系统.GYSM.frmSearch(); search.ShowDialog(); private void tospExit_Click(object sender, EventArgs e)/当单击”退出“按钮时,退出该窗体 this.Close(); private void tospDelete_Click(object sender, EventArgs e)/当单击删除按钮时所触发的操作 Duixiang.gysinfo.gys_Id = this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString();/按供应商编号索引 if (Duixiang.gysmethod.find(Duixiang.gysinfo.gys_Id) = 1) MessageBox.Show(该供应商不能删除); else if (MessageBox.Show(你确认要删除此记录吗!, 提示框, MessageBoxButtons.OKCancel, MessageBoxIcon.Information) = DialogResult.OK) if (Duixiang.gysmethod.GYS_InfoDelete(Duixiang.gysinfo) = 1)/执行供应商方法类中的删除方法 MessageBox.Show(删除成功!, 提示框, MessageBoxButtons.OK, MessageBoxIcon.Information); Duixiang.dataset = Duixiang.gysmethod.GYS_InfoFind(, 5);/重新指定datagv的数据源 Duixiang.datagv.DataSource = Duixiang.dataset.Tables0.DefaultView; else MessageBox.Show(删除失败!, 提示框, MessageBoxButtons.OK, MessageBoxIcon.Error); private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) initObject(); GYSM.frmUpdate update = new 超市库存管理系统.GYSM.frmUpdate(); update.ShowDialog(); private void tospAll_Click(object sender, EventArgs e) dataGridView1.DataSource = Duixiang.gysmethod.GYS_InfoFind(, 5).Tables0.DefaultView;/显示数据库中的全部信息 #endregion 6.4 添加出库信息模块录入出库信息加强对商品的管理,使商品信息更为详细,方便了对商品的管理。界面如图6-5所示。图6-6 用添加出库信息界面主要实现代码如下:public partial class frm_CKD : Form CKD_Info ckdinfo = new CKD_Info(); CKD_InfoMethod ckdmethod = new CKD_InfoMethod(); int flag;/判断时添加按钮的保存还时修改按钮的保存 / / 默认的构造函数,初始化窗体 / public frm_CKD() InitializeComponent(); private void frm_CKD_Load(object sender, EventArgs e) this.dataGridView1.DataSource = ckdmethod.find(,3).Tables0.DefaultView; boBox2.SelectedIndex = 0; initControl(); / / 自定义方法:按钮的状态控制 / public void btnStatus() this.button6.Enabled = !this.button6.Enabled; this.btnUpdate.Enabled = !this.btnUpdate.Enabled; this.btnDel.Enabled = !this.btnDel.Enabled; this.btnSave.Enabled = !this.btnSave.Enabled; this.btnCancel.Enabled = !this.btnCancel.Enabled; this.btnC.Enabled = !this.btnC.Enabled; / / 自定义方法:清空所有控件 / public void ClearContros() this.txtId.Text = ; boBox2.SelectedIndex = 0; this.txtPeo.Text = ; this.dateTimePicker1.Value = DateTime.Now; this.txtSum.Text = ; this.textBox1.Text = ; / / 自定义方法:初始化窗体控件 / public void initControl() try if (dataGridView1.RowCount != 0) this.txtId.Text = this.dataGridView1.SelectedCells0.Value.ToString(); boBox2.Text = this.dataGridView1.SelectedCells5.Value.ToString(); this.dateTimePicker1.Text = this.dataGridView1.SelectedCells1.Value.ToString(); this.txtPeo.Text = this.dataGridView1.SelectedCells4.Value.ToString(); this.textBox1.Text = this.dataGridView1.SelectedCells2.Value.ToString(); this.txtSum.Text = this.dataGridView1.SelectedCells3.Value.ToString(); else ClearContros(); catch (Exception e) MessageBox.Show(e.Message.ToString(); / / 自定义方法:初始化入库单信息实体类对象的各个属性 / public void initObject() ckdinfo.id = this.txtId.Text; d = boBox2.Text; ckdinfo.state = this.textBox1.Text; ckdinfo.sum = Convert.ToDouble(this.txtSum.Text); ckdinfo.czy = this.txtPeo.Text; ckdinfo.date = Convert.ToDateTime(this.dateTimePicker1.Text); private void radioButton3_CheckedChanged(object sender, EventArgs e) this.dataGridView1.DataSource = ckdmethod.find(, 1).Tables0.DefaultView; initControl(); private void radioButton1_CheckedChanged(object sender, EventArgs e) this.dataGridView1.DataSource = ckdmethod.find(, 2).Tables0.DefaultView; initControl(); private void radioButton2_CheckedChanged(object sender, EventArgs e) this.dataGridView1.DataSource = ckdmethod.find(, 3).Tables0.DefaultView; initControl(); private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) initControl(); / / 当单击添加按钮时触发此事件 / / / private void button6_Click(object sender, EventArgs e) ClearContros(); this.txtId.Text = ckdmethod.ckID(); this.txtPeo.Text = D; this.textBox1.Text = 未出库; this.txtSum.Text = 0.000; btnStatus(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东广州市榄核咨询服务有限公司招聘1人笔试考试备考试题及答案解析
- 焊接专机装配工操作规程竞赛考核试卷含答案
- 果脯蜜饯加工工岗前标准化考核试卷含答案
- 2025齐鲁工业大学(山东省科学院)招聘人员1人笔试考试备考试题及答案解析
- 2025云南昆明安宁市第二批招聘乡村医生7人笔试考试备考题库及答案解析
- 缩放排工岗前核心管理考核试卷含答案
- 2026山东青岛胶州市“优才聚胶”计划中小学教师选聘80人考试笔试备考试题及答案解析
- 继电器线圈绕制工班组管理模拟考核试卷含答案
- 海洋地质调查员创新思维竞赛考核试卷含答案
- 2025贵州黔东南州凯里瑞禾农业投资(集团)有限责任公司招聘工作人员笔试排名最低合格分数线和笔试历年参考题库附带答案详解
- 矿山开采沉降管理办法
- GJB939A-2022外购器材的质量管理
- 纪委监督检查知识培训课件
- 2025 年 九年级英语上册Unit 7 单元测试卷含答案
- 湿法冶金基础知识培训课件
- 中药离子导入治疗技术
- 小学生愚公移山讲座三分钟
- 剖析阿玛蒂亚·森可行能力正义理论:内涵、局限与当代价值
- 《建筑业10项新技术(2025)》全文
- 餐厨废水全流程处理技术指南
- 食品财务核算管理办法
评论
0/150
提交评论