超市进销存管理系统.doc_第1页
超市进销存管理系统.doc_第2页
超市进销存管理系统.doc_第3页
超市进销存管理系统.doc_第4页
超市进销存管理系统.doc_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

_摘要随着进销存规模的发展不断扩大,商品数量急剧增加,有关商品的各种库存信息量也成倍增长。进销存时时刻刻都需要对库存各种信息进行统计分析。而市面上的一些大型的进销存管理系统功能过于强大而造成操作繁琐降低了进销存的工作效率。商品进销存管理系统是市场上最流行的进销存上常用的系统之一,它主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。从而,实现对入库、销售及员工信息等实现全面、动态、及时的管理。本系统是一个简单小型的超市进销存管理系统,它主要分为基本信息管理模块,进货管理模块,销售管理模块,库存管理模块。开发工具采用Microsoft visual studio 2005,开发语言为C# 2.0,数据库采用大型数据库SQL Server 2005。运行平台为windows XP。关键字 : 进销存 C# SOL Server2005目录1 社会背景42 语言简介53 总体设计63.1 开发环境 63.2 系统界面63.2.1 登陆界面及主界面63.2.2 登录功能代码实现73.2.3 模块功能实现103.2.4小结204 系统需求简析204.1 用户工作流程204.2系统模块子功能概述204.3 数据库需求分析及概念设计214.3.1 数据库需求分析214.3.2 数据库逻辑结构设计225 系统测试运行256 设计总结25参考文献25附录261 社会背景中小型超市在我国经济发展中具有重要的的地位,目前我国中小型超市数量多,地区分布广泛,行业分布跨度大。随着全球商业一体化和电子商务的兴起,中小型超市之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间、空间的局限性,给中小型超市带来了更多的发展机会,同时也增大了同行业之间的竞争强度。这就要求中小型超市必须改变经营管理模式,提高运营效率,目前我国中小型超市的信息化水平还比较低,随着电脑技术的发展,同时市场经济的快速多变,竞争激烈,超市行业采用电脑管理进货,销售,库存等诸多环节已成为必然趋势!进销存管理系统的发展历程 1.进销存管理系统的发展历史可以追溯到20世纪60年代末期。由于当时计算机技术已经进入实用阶段,同时大型企业用手工来计算和发放薪资既费时费力又非常容易出差错,为了解决这个矛盾,第一代的进销存管理系统应运而生。当时由于技术条件和需求的限制,用户非常少,而且那种系统充其量也只不过是一种自动计算薪资的工具,既不包含非财务的信息,也不包含薪资的历史信息,几乎没有报表生成功能和薪资数据分析功能。但是,它的出现为进销存管理的管理展示了美好的前景,即用计算机的高速度和自动化来替代手工的巨大工量,用计算机的高准确性来避免手工的错误和误差,使大规模集中处理大型企业的薪资成为可能。 2.第二代的进销存管理系统出现于20世纪70年代末。由于计算机技术的飞速发展,无论是计算机的普及性,还是计算机系统工具和数据库技术的发展,都为进销存管理系统的阶段性发展提供了可能。第二代进销存管理系统基本上解决了第一代系统的主要缺陷,对非财务的进销存管理信息和薪资的历史信息都给予了考虑,其报表生成和薪资数据分析功能也都有了较大的改善。但这一代的系统主要是由计算机专业人员开发研制的,未能系统地考虑进销存管理的需求和理念,而且其非财务的进销存管理信息也不够系统和全面。 3.进销存管理系统的革命性变革出现在20世纪90年代末。由于市场竞争的需要,如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系企业兴衰的重要因素,人才已经成为企业最重要的资产之一。公正、公平、合理的企业管理理念和企业管理水平的提高,使社会对进销存管理系统有了更高的需求;同时由于个人电脑的普及,数据库技术、客户/服务器技术,特别是Internet/Intranet技术的发展,使得第三代进销存管理系统的出现成为必然。第三代进销存管理系统的特点是从进销存管理的角度出发,用集中的数据库将几乎所有与进销存管理相关的数据(如薪资福利、招聘、个人职业生涯的设计、培训、职位管理、绩效管理、岗位描述、个人信息和历史资料)统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得进销存管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑企业进销存管理规划和政策。一套比较系统的进销存管理理念,并建立了一整套比较规范的进销存管理方法。在积极建立企业现代企业管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,人力资源部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和处理。公司管理者的决策只能依据报表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想在企业中实现就成为了一个可望而不可及的目标。公司集团非常急需一套既有先进管理思想又适合国内大企业的进销存管理信息系统,作为实现目标和提高现有水平的一种重要手段2语言简介C#C#(念法:C Sharp,音标 a:p)是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的研究成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。本系统采用C#语言作为开发语言,C#是由C,C+语言发展而来,他在继承两者的强大功能的同时,也抛弃了他们一些复杂的特性,使得该门语言变得相对简单,尤其在界面实现方面显得更有优势,更容易控制。C#中没有宏,没有模板,不允许多重继承,不再强调使用指针,几乎抛弃了所有令编程人员头疼的特征。C#在语法和思维方面也与java有着很强大的相似性。C#是多种语言的混合体,因此它像Java一样语法简洁,像VB6一样使用简单,像C+一样功能强大和灵活。以下是C#核心特征的一部分,其中大部分特点也是其他支持.NET的程序语言所共有的特征。C#程序通常不需要直接对指针进行操作(尽管在绝对必要时也能自由地进行底层操作)。垃圾收集器能够自动管理内存。因此,C#不支持delete关键字。类、接口枚举、结构和委托都有正式的语法结构。具有与C+类似的功能,可以简单地重载运算符为自定义类型。这种方式的开发允许我们注释类型及其成员来进一步限定其行为。随着.NET 2.0的发布,C#编程语言得到了更新以支持很多花哨的东西,主要是以下几项。构建泛型类型和泛型成员的能力。使用泛型,我们可以构建非常高效的并且类型安全的代码,在和泛型项交互的时候可以定义很多占位符。支持匿名方法,它允许我们在任何需要委托类型的地方提供内联函数。很多委托/事件模型的简化,包括协变、逆变以及方法组转换。SQL Server 2005 SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQL Server 2005不仅可以有效地执行大规模联机事务处理,而且可以完成数据仓库和电子商务应用等许多具有挑战性的工作。SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益SQL Server 2005 通过在可伸缩性、数据集成、开发工具和强大的分析等方面的革新更好的确立了微软在BI领域的领导地位。SQL Server 2005 能够把关键的信息及时的传递到组织内员工的手中,从而实现了可伸缩的商业智能。从CEO 到信息工作者,员工可以快速的、容易的处理数据,以更快更好的做出决策。SQL Server 2005全面的集成、分析和报表功能使企业能够提高他们已有应用的价值,即便这些应用是在不同的平台上。3 总体设计3.1 开发环境操作系统:Microsoft Windows Xp Professional Service Pack 3开发工具:Microsoft visual studio 2005应用数据库:SQL Server 2005开发语言:C# 2.03.2 系统界面3.2.1 登陆界面及主界面系统登录界面如图3-1所示。图3-1 登录界面窗体主界面窗体如图3-2所示.图3-2 主界面窗体3.2.2 登录功能代码实现实现登录功能代码如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data .SqlClient ;namespace 超市进销存系统设计 public partial class Form1 : Form public Form1() InitializeComponent(); String str = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection conn = new SqlConnection(); SqlDataReader result = null; public bool loginus(string un, string pw) conn.ConnectionString = str; string sql = select*from Denglu where usename= + un + and password = + pw + ; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Connection .Open (); try result = cmd.ExecuteReader(); catch (Exception) MessageBox .Show (对不起!查询数据失败!, 提示); if (result != null) if (result.Read() return true; ; result.Close(); cmd.Connection.Close(); return false; private void button1_Click(object sender, EventArgs e) string n = textBox1.Text.Trim(); string p = textBox2.Text.Trim(); if (textBox1.Text != ) & (textBox2.Text != ) if (loginus(n, p) = false) MessageBox.Show(用户或密码错误); return; DialogResult = DialogResult.OK; this.Hide(); Form2 f2 = new Form2(); f2.Show(); private void button2_Click(object sender, EventArgs e) this.Close(); 3.2.3 模块功能实现 员工信息管理模块实现实现对员工的查询、添加和删除等操作。界面如图3-3所示。图3-3 员工信息管理窗体该模块界面实现只需要在开发工具左侧工具箱中选择相应的控件添加到Form中即可,而后再对相应的查询,添加,删除,退出控件进行双击,添加事件响应。功能实现查询关键代码如下:private void 查询ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection SqlConnection1 = new SqlConnection(); SqlConnection1.ConnectionString = aa; string sql = select *from yuangong where 员工号=+textBox4.Text+; SqlCommand SqlCommand1 = new SqlCommand(); SqlCommand1.CommandText = sql; SqlCommand1.Connection = SqlConnection1; SqlDataAdapter da = new SqlDataAdapter(sql ,SqlConnection1); DataSet ds = new DataSet(); try SqlConnection1.Open(); da.Fill(ds); catch (Exception ) MessageBox.Show(查询失败); finally SqlConnection1.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; 功能实现添加关键代码如下: private void 添加ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection con = new SqlConnection(); con.ConnectionString = aa; string cmdText = insert into yuangong(员工号,员工姓名,性别,职位) values(+textBox4 .Text+ ,+textBox1 .Text +,+textBox2.Text+ ,+textBox3 .Text+ ); SqlCommand cmd = new SqlCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!添加数据失败); finally con.Close(); shuaxin(); 功能实现删除关键代码如下: private void 删除ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection con = new SqlConnection(); con.ConnectionString = aa; MessageBox.Show(删除前请查询); string cmdText = delete from yuangong where 员工号= + textBox4.Text + ; SqlCommand cmd = new SqlCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!删除失败!); finally con.Close (); shuaxin () ; 供应商信息管理模块实现实现对供应商的查询、添加和删除等操作。界面如图3-4所示。图3-4 供应商信息管理窗体 该模块界面实现只需要在开发工具左侧工具箱中选择相应的控件添加到Form中即可,而后再对相应的查询,添加,删除,退出控件进行双击,添加事件响应。其查询,添加,删除代码跟员工信息模块相似,只需把表明改成gongyishang即可。商品查询模块实现对商品的查询操作。界面如图3-5所示。图3-5 商品查询窗体功能实现关键代码如下: private void 查询ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection SqlConnection1 = new SqlConnection(); SqlConnection1.ConnectionString = aa; string sql = select *from jinhuo where 商品名= + textBox1.Text + ; SqlCommand SqlCommand1 = new SqlCommand(); SqlCommand1.CommandText = sql; SqlCommand1.Connection = SqlConnection1; SqlDataAdapter da = new SqlDataAdapter(sql, SqlConnection1); DataSet ds = new DataSet(); try SqlConnection1.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(查询失败); finally SqlConnection1.Close(); dataGridView1 .DataSource =ds.Tables 0.DefaultView ; 商品退货实现对商品的退货功能,如图3-6所示。图 3-6 商品退货窗口体其退货功能实现关键代码如下: void shuaxin() string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection con = new SqlConnection(); con.ConnectionString = aa; string cmdText = SELECT *FROM tuihuo; SqlDataAdapter da = new SqlDataAdapter(cmdText, con); DataSet ds = new DataSet(); try con.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(对不起!打开数据库失败); finally con.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; void qingkong() textBox1.Text = ; textBox2.Text = ; textBox3.Text = ; textBox4.Text = ; private void 确定ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection con = new SqlConnection(); con.ConnectionString = aa; string cmdText = insert into tuihuo(商品名称,退货单价,数量,退货原因) values( + textBox1.Text + , + textBox2.Text + , + textBox3.Text + , + textBox4.Text + ); SqlCommand cmd = new SqlCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!退货失败); finally con.Close(); shuaxin(); MessageBox.Show(退货成功!); 商品销售实现对商品的销售功能,界面如图3-7所示。图3-7 商品销售窗体其销售功能实现只要代码如下: void shuaxin() string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection con = new SqlConnection(); con.ConnectionString = aa; string cmdText = SELECT *FROM xiaoshou; SqlDataAdapter da = new SqlDataAdapter(cmdText, con); DataSet ds = new DataSet(); try con.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(对不起!打开数据库失败); finally con.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; void qingkong() textBox1.Text = ; textBox2.Text = ; textBox3.Text = ; textBox4.Text = ; private void 确定ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection con = new SqlConnection(); con.ConnectionString = aa; string cmdText = insert into xiaoshou(商品名称,销售日期,实付金额,销售人) values( + textBox1.Text + , + textBox2.Text + , + textBox3.Text + , + textBox4.Text + ); SqlCommand cmd = new SqlCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!销售失败); finally con.Close(); shuaxin(); MessageBox.Show(销售成功); 库存统计模块实现对库存的统计及报警功能,界面如图3-8所示。图 3-8 库存统计界面实现库存统计功能的关键代码如下: private void 统计ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection SqlConnection1 = new SqlConnection(); SqlConnection1.ConnectionString = aa; string sql = select 库存量 from cangku where 仓库名=饮料; SqlCommand SqlCommand1 = new SqlCommand(); SqlCommand1.CommandText = sql; SqlCommand1.Connection = SqlConnection1; SqlDataAdapter da = new SqlDataAdapter(sql ,SqlConnection1); DataSet ds = new DataSet(); try SqlConnection1.Open(); da.Fill(ds); catch (Exception ) MessageBox.Show(查询失败); finally SqlConnection1.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView;库存查询模块实现对库存的查询功能,其界面如图3-9所示。图3-9 库存查询窗体实现库存查询功能主要代码如下: private void 确定ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Data Source=;Initial Catalog=supermarket;Integrated Security=True; SqlConnection SqlConnection1 = new SqlConnection(); SqlConnection1.ConnectionString = aa; string sql = select * from jinhuo; SqlCommand SqlCommand1 = new SqlCommand(); SqlCommand1.CommandText = sql; SqlCommand1.Connection = SqlConnection1; SqlDataAdapter da = new SqlDataAdapter(sql, SqlConnection1); DataSet ds = new DataSet(); try SqlConnection1.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(查询失败); finally SqlConnection1.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; 3.2.4小结开发一套完整的超市进销存管理系统,要从实际出发,根据实际需要设计流程图。根据系统数据量选择数据库,分析系统具体需要的模块,对模块要进行严格的编码控制,对于一些常见的错误要进行异常处理。通过对该系统的分析和设计,使我不仅能够掌握超市进销存管理系统的开发流程,而且对开发其他软件也有很好的启发。4 系统需求分析4.1 用户工作流程商品入库或商品销售时,用户要对入库单或销售单进行核对审查,并进行登记;用户要获得入库、销售、库存信息时,要对入库情况、销售情况、库存情况进行查询。4.2系统模块子功能概述1、基本信息管理功能:(1)实现对员工,以及商品供应商信息的增加,删除,操作。(2)实现对员工,供应商信息的查询和添加操作。2、进货管理功能:(1)实现对货物的进货管理和退收操作。(2)对已进货物进行详细查询。3、销售管理功能:(1)实现商品的销售功能和商品退货功能。4、库存管理功能:(1)实现库存报警,库存查询功和库存统计功能。图2-1系统功能结构图4.3 数据库需求分析及概念设计4.3.

温馨提示

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

评论

0/150

提交评论