毕业设计(论文)-C#超市进销存系统设计.doc_第1页
毕业设计(论文)-C#超市进销存系统设计.doc_第2页
毕业设计(论文)-C#超市进销存系统设计.doc_第3页
毕业设计(论文)-C#超市进销存系统设计.doc_第4页
毕业设计(论文)-C#超市进销存系统设计.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

交通运输学院毕业实习报告目录摘要1引言21.开发背景及开发语言21.1开发背景21.2开发语言22.可行性分析与需求分析22.1 可行性分析22.2 模块需求分析22.3 数据库需求分析及概念设计23.总体设计23.1 开发环境23.2 系统界面23.3公共类设计与模块功能代码实现24开发难点分析25 实习总结26 参考文献2附录2毕业实习论文超市进销存管理系统摘要目前,无论是私有公司还是国有企业对于货物都要求实行信息化管理,以提高管理水平和工作效率,同时也可以最大限度地减少手工操作带来的错误。于是,进销存管理信息系统便应运而生。在超市中,产品的进销存涉及商品的采购、库存、销售、查询、营业分析。为了更好地处理超市日常运作程序,使得超市商品进销存更加合理。所以一款好的超市进销存管理系统就显得尤为重要了。从另一方面来讲,对普通超市来讲,涉及原材料的进货渠道、销售情况及库存等方面的管理,管理的好与坏对超市的持久性至关重要。概括地说,用户对进销存系统的需求具有普遍性。超市进销存销售管理系统适用于超市采购、销售和仓库部门,对超市采购、销售及仓库的业务全过程进行有效控制和跟踪。使用超市进销存销售管理系统可有效减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,提升超市的市场竞争力。本系统是一个简单小型的超市进销存管理系统,它主要分为基本档案模块,进货管理模块,库存管理模块,销售管理模块,系统模块。开发工具采用Microsoft visual studio 2005,开发语言为C# 2.0,,数据库采用大型数据库SQL Server 2005。运行平台为windows xp/vista关键字 : 进销存 C# SOL Server2005引言当今社会是一个信息社会,一个知识经济时代。自世界上第一台计算机ENIAC(Electronic numerical integrator and calculator)于1946年在美国问世到现在,计算机业飞速发展,技术淘汰指标高的惊人,价格下降以及软件应用的快速扩展引发了以信息处理计算机化为标志的“微机革命”,随之而来的是以全球信息网络普及和全球信息共享为标志的“全球信息网络革命”的蓬勃兴起。可见,世界已进入在计算机信息管理领域中激烈竞争的时代,计算机已经变得普通的不能再普通的工具,如同我们离不开的自行车、汽车一样。在这种环境下证实了一句话:谁掌握的知识多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就能在各种竞争中立于不败之地。中小型企业在我国经济发展中具有重要的地位,目前我国的中小型超市数量较多、地区分布广泛、行业分布跨度大,随着全球经济一体化的发展及中国加入WTO,中小型企业将面临外资企业和国外产品与服务的严峻挑战。如果我国的中小型超市不借助先进的管理思想转变经营观念、使用信息化提高企业的管理水平和工作效率,将很难在今后的国际竞争中取胜。随着技术发展,电脑的操作及管理日趋普及,因此我国中小型超市采用电脑管理公司的各种业务也已成为趋势和必然。信息在不同的领域里有着不同的概念,在管理科学领域中,通常认为信息是经过加工处理后的一种数据形式,是一种有次序的符号排列,它是系统传输和处理的对象。处在信息时代的今天,信息的作用越来越为人们所重视。制定工作计划,研究投资策略,都离不开对信息的充分利用。管理信息系统(Management Information System,缩写MIS)是一种“人机系统”,它以特定的模式支持一个组织内各级组织机构之间的通讯,对信息资源进行综合开发,管理和利用,实现对该组织的有效管理。它通过对数据的加工处理,及时为管理与决策分析提供信息。其主要任务是最大限度的利用现代计算机及网络通讯技术加强企业的信息管理,通过对企业拥有的人力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高企业的管理水平和经济效益。随着我国与世界信息高速公路的接轨,企业通过计算机网络获得信息必将为企业带来巨大的经济效益和社会效益,企业的办公及管理都将朝着高效、快速、无纸化的方向发展。MIS系统通常用于系统决策,MIS系统的最终目的是使管理人员及时了解公司现状,把握将来的发展路径。正文1. 开发背景及开发语言1.1开发背景中小型超市在我国经济发展中具有重要的的地位,目前我国中小型超市数量多,地区分布广泛,行业分布跨度大。随着全球商业一体化和电子商务的兴起,中小型超市之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间、空间的局限性,给中小型超市带来了更多的发展机会,同时也增大了同行业之间的竞争强度。这就要求中小型超市必须改变经营管理模式,提高运营效率,目前我国中小型超市的信息化水平还比较低,随着电脑技术的发展,同时市场经济的快速多变,竞争激烈,超市行业采用电脑管理进货,销售,库存等诸多环节已成为必然趋势!进销存管理系统的发展历程 1.进销存管理系统的发展历史可以追溯到20世纪60年代末期。由于当时计算机技术已经进入实用阶段,同时大型企业用手工来计算和发放薪资既费时费力又非常容易出差错,为了解决这个矛盾,第一代的进销存管理系统应运而生。当时由于技术条件和需求的限制,用户非常少,而且那种系统充其量也只不过是一种自动计算薪资的工具,既不包含非财务的信息,也不包含薪资的历史信息,几乎没有报表生成功能和薪资数据分析功能。但是,它的出现为进销存管理的管理展示了美好的前景,即用计算机的高速度和自动化来替代手工的巨大工量,用计算机的高准确性来避免手工的错误和误差,使大规模集中处理大型企业的薪资成为可能。 2.第二代的进销存管理系统出现于20世纪70年代末。由于计算机技术的飞速发展,无论是计算机的普及性,还是计算机系统工具和数据库技术的发展,都为进销存管理系统的阶段性发展提供了可能。第二代进销存管理系统基本上解决了第一代系统的主要缺陷,对非财务的进销存管理信息和薪资的历史信息都给予了考虑,其报表生成和薪资数据分析功能也都有了较大的改善。但这一代的系统主要是由计算机专业人员开发研制的,未能系统地考虑进销存管理的需求和理念,而且其非财务的进销存管理信息也不够系统和全面。 3.进销存管理系统的革命性变革出现在20世纪90年代末。由于市场竞争的需要,如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系企业兴衰的重要因素,人才已经成为企业最重要的资产之一。公正、公平、合理的企业管理理念和企业管理水平的提高,使社会对进销存管理系统有了更高的需求;同时由于个人电脑的普及,数据库技术、客户/服务器技术,特别是Internet/Intranet技术的发展,使得第三代进销存管理系统的出现成为必然。第三代进销存管理系统的特点是从进销存管理的角度出发,用集中的数据库将几乎所有与进销存管理相关的数据(如薪资福利、招聘、个人职业生涯的设计、培训、职位管理、绩效管理、岗位描述、个人信息和历史资料)统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得进销存管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑企业进销存管理规划和政策。一套比较系统的进销存管理理念,并建立了一整套比较规范的进销存管理方法。在积极建立企业现代企业管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,人力资源部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和处理。公司管理者的决策只能依据报表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想在企业中实现就成为了一个可望而不可及的目标。公司集团非常急需一套既有先进管理思想又适合国内大企业的进销存管理信息系统,作为实现目标和提高现有水平的一种重要手段1.2开发语言C#本系统采用C#语言作为开发语言,C#是由C,C+语言发展而来,他在继承两者的强大功能的同时,也抛弃了他们一些复杂的特性,使得该门语言变得相对简单,尤其在界面实现方面显得更有优势,更容易控制。C#中没有宏,没有模板,不允许多重继承,不再强调使用指针,几乎抛弃了所有令编程人员头疼的特征。C#在语法和思维方面也与java有着很强大的相似性。C#是多种语言的混合体,因此它像Java一样语法简洁,像VB6一样使用简单,像C+一样功能强大和灵活(C#没有像C+那样麻烦的位操作)。以下是C#核心特征的一部分,其中大部分特点也是其他支持.NET的程序语言所共有的特征。不需要指针!C#程序通常不需要直接对指针进行操作(尽管在绝对必要时也能自由地进行底层操作)。垃圾收集器能够自动管理内存。因此,C#不支持delete关键字。类、接口枚举、结构和委托都有正式的语法结构。具有与C+类似的功能,可以简单地重载运算符为自定义类型(例如,不需要操心确保返回*this以能够链接)。支持基于特性的编程。这种方式的开发允许我们注释类型及其成员来进一步限定其行为。随着.NET 2.0的发布(大约在2005年),C#编程语言得到了更新以支持很多花哨的东西,主要是以下几项。构建泛型类型和泛型成员的能力。使用泛型,我们可以构建非常高效的并且类型安全的代码,在和泛型项交互的时候可以定义很多占位符。支持匿名方法,它允许我们在任何需要委托类型的地方提供内联函数。很多委托/事件模型的简化,包括协变、逆变以及方法组转换。SQL Server 2005SQL 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全面的集成、分析和报表功能使企业能够提高他们已有应用的价值,即便这些应用是在不同的平台上。商业智能增强体现在以下几个方面:端到端的集成BI平台集成服务分析服务报表服务Microsoft Office System的集成2. 可行性分析与需求分析2.1 可行性分析2.1.1技术可行性 鉴于我在大学期间学习了有关java语言的系统开发并实现了一个用java编写的超市管理系统,并在大四第一学期学习了C#语言,对于管理信息系统的开发又有了新的认识和提高,使自己在开发管理信息系统的方面的技术更加成熟。C#语言和VB语言拥有强大的界面实现功能,而C#语言和java语言的语法思维方面有着巨大的相似之处,驾驭起来也比较容易。所以通过分析,结合自己的技术水平和指导老师的指导,该系统的设计还是可行的。2.1.2经济可行性 学校和网络上有着较为丰富的免费的资料资源,和指导老师的义务指导,所以基本上该系统开发过程中的成本还是很低的,在经济上是可行的。2.1.3操作可行性 该系统只要界面设计友好,再搭配使用说明,操作起来是没有问题的。综上分析来看,开发该系统完全可行。2.2 模块需求分析无论是一个公司还是一个超市,都有很多的数据要管理。手工管理这些纷繁复杂的数据的方式已经不适应时代的潮流,实现数据规范化,自动化的电脑管理,是一个管理规范,运作高效的企事业单位的必然要求。而且如何降低成本已经成为超市首要解决的问题。要降低成本,提高收益,就必须合理化管理,管理的好坏对超市的生存持久性至关重要,准确的讲,用户对进销存系统的需求有着普遍性。本系统就是为了实现小超市的进销存数据而设计的小型管理系统。本系统包括销售管理,库存管理,供货商管理,进货管理及用户管理5部分。系统结构如图1.1.1所示。系统功能结构:图1.1.1 系统结构图2.2.1系统目标本系统属于小型超市进销存销售管理系统,可以有效的对中小型超市进行销售管理。本系统应达到以下目标:1系统采用人机交互的方式,界面美观友好,信息查询灵活方便2对用户输入的数据进行严格的检验,降低人为错误3提高数据存储的安全可靠性4能够对进货信息进行有效地管理5能够准确的,详细的管理商品库存信息6最大可能实现系统的易操作性2.2.2系统模块子功能概述1、基本档案功能:(1)实现对员工,以及商品供应商信息的增加,删除,修改操作。(2)对在职员工的登陆名与登陆密码的修改操作。(3)实现对员工,供应商信息的查询。2、进货管理功能:(1)实现对货物的进货管理和退收操作。(2)对已进货物进行详细查询3、销售管理功能:(1)实现商品的销售功能和商品退货功能4、库存管理功能:(1)实现库存报警和库存查询功能5、系统管理功能: (1)提供对所有数据的保存备份以及数据恢复的功能此次设计我个人负责进货信息,销售信息以及退货详情这三个分子模块的设计与实现,故我就这三个模块来进行分析。2.3 数据库需求分析及概念设计2.3.1 数据库需求分析用户的需求具体体现在对商品数据的增加和查询。这就要求数据库结构充分满足各种信息的输出和输入。搜集基本数据、数据结构和数据处理的流程,组成一个详尽的数据字典,为后面的具体设计打下基础。通过上述系统功能分析,总结出所要设计的三个子模块有如下的需求信息:1. 登陆需要在职员工的登录名和密码,这两个字段已经设计到tb-EmpInfo中。2. 销售信息,退货详情以及进货信息这三个子模块需要独立的数据经过上述系统功能分析和需求总结,设计如下面所示的数据项和数据结构。1、员工信息表,包括:员工编号,员工姓名,登陆账号,登录密码,员工性别,员工生日,所属部门,员工职位,家庭电话,手机号码,家庭住址等字段;2、销售信息表,包括:销售编号,商品编号,员工姓名,商品名称,销售数量,销售时间,单价,应付金额,实付金额,备注等字段;3、进货信息表,包括:商品编号,商品名称,供应商名称,进货数量,进货单价,销售单价,应付金额,实付金额,仓库名称等字段;4、退货详情表,包括:退货商品编号,销售编号,商品名称,退货日期,退货数目,退货单价,实付金额,退货原因等字段2.3.2 数据库逻辑结构设计数据库的逻辑设计由1.2.1的分析可知,员工信息表,销售信息表,进货信息表以及退货信息表的设计分别为EmpInfo (图1.1),SellGoods(图1.2),JHGoodsInfo(图1.3),THGoodsInfo(图1.4)图1.1 EmpInfo表图1.2 SellGoods表图1.3 JHGoodsInfo表图1.4 THGoodsInfo表数据库概念设计ER图 超市离不开货物往来,日常货物的购买是非常重要的,在一个数据库中建立一个进货信息表用以存储进货的详细信息是非常必要的。进货信息尸体ER图如图1.5所示。 图1.5 进货信息实体ER图当顾客对某件商品不满意时,可能会要求退货,同时超市经营者也要详细的了解退货信息。此时,所需要在数据库中建立一个商品退货信息表用于存储所有退货信息,商品退货信息实体ER图如图1.6所示。图1.6 商品退货信息实体ER图为了时刻了解超市的销售利润,需要对商品的的销售情况有所了解,故需要在数据库中建立一张商品销售实体ER图,商品销售实体ER图如图1.7所示图1.6 商品销售信息实体ER图3.总体设计3.1 开发环境操作系统:Microsoft Windows Xp Professional Service Pack 3开发工具:Microsoft visual studio 2005应用数据库:SQL Server 2005 开发版开发语言:C# 2.03.2 系统界面3.2.1 登陆界面及主界面登陆界面如图2.2.1所示。图2.2.1 登录窗体如果用户名错误或者不存在,会弹出提示框,如图2.2.2所示。图2.2.2 错误提示框主界面窗体如图2.2.3所示图2.2.3 主界面窗体3.3公共类设计与模块功能代码实现3.3.1 公共类设计GetSqlConnection类主要实现与数据库的的连接,在代码或其他公共类中可以调用该类,连接数据库,试下代码如下:using System;using System.Collections.Generic;using System.Text;using System.Data.SqlClient; /引用必要的命名空间namespace CHEXC.GoodMenhodpublic class getSqlConnection代码中用到的变量String G_Str_ConnectionString = DataSource=20111022-1045SQLEXPRESS;database=db_CSManage;uid=sa;pwd=;SqlConnection G_Con; /声明链接对象构造函数public getSqlConnection()连接数据库public SqlConnection GetCon()G_Con = new SqlConnection(G_Str_ConnectionString);G_Con.Open();return G_Con; ThGoodsInfo类是商品退货信息表实体类,该类的的功能是传递商品退货信息表有关的参数实体。实现代码如下:using System;using System.Collections.Generic;using System.Text;namespace CHEXC.ClassInfopublic class tb_ThGoodsInfoprivate string ThGoodsID;public string strThGoodsID / 退货编号 get return ThGoodsID; set ThGoodsID=value; private string KcID; public string strKcID / 库存编号 get return KcID;set KcID=value; private string GoodsID; public string strGoodsID /商品编号 get return GoodsID;set GoodsID=value; private string SellID; public string strSellID /销售单号 get return SellID;set SellID=value; private string EmpId; public string intEmpId get return EmpId;set EmpId=value; private string ThGoodsName; public string strThGoodsName get return ThGoodsName; set ThGoodsName=value; private int ThGoodsNum; public int intThGoodsNum get return ThGoodsNum;set ThGoodsNum=value; private DateTime ThGoodsTime; public DateTime daThGoodsTime get return ThGoodsTime; set ThGoodsTime=value; private string ThGoodsPrice; public string deThGoodsPrice get return ThGoodsPrice; set ThGoodsPrice=value; private string ThNeedPay; public string deThNeedPay get return ThNeedPay; set ThNeedPay=value; private string ThHasPay; public string deThHasPay get return ThHasPay; set ThHasPay=value; private string ThGoodsResult; public string deThGoodsResult get return ThGoodsResult; set ThGoodsResult=value; 3.3.2 模块功能实现商品销售模块实现对商品的销售,已买商品的撤消操作。界面如图2.1所示:图3.1 商品销售模块该模块界面实现只需要在开发工具左侧工具箱中选择相应的控件添加到Form中即可,而后再对相应的控件进行双击,添加事件响应。功能实现关键代码如下:private void FillControls() try SqlDataReader sqldr = sellMenthod.dtb_SellGoodsFind(this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); sqldr.Read(); if (sqldr.HasRows) txtSellID.Text = sqldr0.ToString(); txtSellID.Enabled = false; txtEmpID.Text = sqldr3.ToString(); txtGoodsName.Text = sqldr4.ToString(); txtSellGoodsNum.Text = sqldr5.ToString(); DaSellGoodsTime.Value = Convert.ToDateTime(sqldr6.ToString(); txtSellRemark.Text = sqldr10.ToString(); txtdeSellPrice.Text = sqldr7.ToString(); txSellNeedPay.Text = sqldr8.ToString(); txtdeSellHasPay.Text = sqldr9.ToString(); sqldr.Close(); catch (Exception ee) MessageBox.Show(ee.ToString(); 使用该模块时,需要购买商品,需要点击界面上方的添加,系统会自动生成一个流水号,然后在商品名称一栏填入所要购买的商品,等一切操作完成后,点击保存,便完成交易了。商品退货模块实现对商品的退货功能鉴于C#语言有着强大的界面绘制功能,所以在此对于商品退货模块的界面设计就不再讲了,我们着重讲述该模块的退货功能的实现和操作时所要注意的问题。图3.2为商品退货模块的设计界面图。图3.1 商品退货模块商品退货模块关键代码如下:namespace CHEXC public partial class frmThGoodsInfo : Form public frmThGoodsInfo() InitializeComponent(); tb_ThGoodsInfo tbGoodinfo = new tb_ThGoodsInfo(); tb_ThGoodsMenthod tbMendd = new tb_ThGoodsMenthod(); public string goodid = null; public string Kcid = null; public int intCoun = 0; public void getClear() txtThGoodsID.Text=; txtSellID.Text=; txtSellID.Text=; txtThGoodsName.Text=; txThGoodsNum.Text=; daThGoodsTime.Value = DateTime.Now; txtThGoodsPrice.Text=; txtThHasPay.Text=; txtThNeedPay.Text=; txtThGoodsResult.Text=; txtDataTime.Text = ; txtPrice.Text = ; txtnum.Text = ; txtEmpID.Text = ; /初始化数据 public void FillControls() try SqlDataReader sqldr = tbMendd.tb_JhGoodsInfoFind(this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString() sqldr.Read(); if (sqldr.HasRows) / 数据库操作 txtThGoodsID.Text = sqldr0.ToString(); txThGoodsNum.Text= sqldr6.ToString(); txtThGoodsPrice.Text=sqldr8.ToString(); txtThHasPay.Text=sqldr10.ToString(); txtThNeedPay.Text=sqldr9.ToString(); txtThGoodsResult.Text=sqldr11.ToString(); txtEmpID.Text=sqldr4.ToString(); daThGoodsTime.Value = Convert.ToDateTime(sqldr7.ToString(); sqldr.Close(); catch (Exception ee) MessageBox.Show(ee.ToString(); public void fillGet() try tb_SellGoodsMenthod tbsell = new tb_SellGoodsMenthod(); SqlDataReader dr = tbsell.dtb_SellGoodsFind(this.dataGridView11, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); dr.Read(); if (dr.HasRows) / 界面表中填充显示 txtSellID.Text = dr0.ToString(); txtThGoodsName.Text = dr4.ToString(); goodid = dr2.ToString(); Kcid = dr1.ToString(); txtDataTime.Text = dr6.ToString(); txtPrice.Text = dr7.ToString(); txtnum.Text = Convert.ToInt32(dr5.ToString().ToString(); dr.Close(); catch (Exception ee) MessageBox.Show(ee.Message.ToString(); 使用方法和销售管理模块是一样的,只不过需要注意的是,所推货物的数量必须低于起初所购买货物的数目,否则会出现数据库错误。进货管理模块设计与实现模块界面图如图3.3所示3.3 进货管理模块界面图功能实现关键代码:namespace CHEXC.GoodMenhod public class tb_JhGoodsInfoMenthod SqlConnection conn = null; SqlCommand cmd = null; SqlDataReader qlddr = null; public int tb_JhGoodsInfoMenthodAdd(tb_JhGoodsInfo tbGood) int intFalg = 0; try string str_Add = insert into tb_JhGoodsInfo values( ; str_Add += + tbGood.strGoodsID + , + tbGood.strEmpId + , + tbGood.strJhCompName + ,; str_Add += + tbGood.strDepotName + , + tbGood.strGoodsName + , + tbGood.strGoodsNum + ,; str_Add += + tbGood.strGoodsUnit + , + tbGood.deGoodsJhPrice + , + tbGood.deGoodsSellPrice + ,; str_Add += + tbGood.deGoodsNeedPrice + , + tbGood.deGoodsNoPrice + , + tbGood.strGoodsRemark + ,; str_Add += + tbGood.DaGoodTime + , + tbGood.Falg + ); getSqlConnection getConnection = new getSqlConnection(); conn = getConnection.GetCon(); cmd = new SqlCommand(str_Add, conn); intFalg = cmd.ExecuteNonQuery(); conn.Dispose(); return intFalg; catch (Exception ee) MessageBox.Show(ee.ToString(); return intFalg; public int tb_JhGoodsInfoMenthodUpdate(tb_JhGoodsInfo tbGood) int intFalg = 0; try string str_Add = update tb_JhGoodsInfo set ; str_Add += EmpId= + tbGood.strEmpId + ,JhCompName= + tbGood.strJhCompName + ,; str_Add += DepotName= + tbGood.strDepotName + ,GoodsName= + tbGood.strGoodsName + ,GoodsNum= + tbGood.strGoodsNum + ,; str_Add += GoodsUnit= + tbGood.strGoodsUnit + ,GoodsJhPrice= + tbGood.deGoodsJhPrice + ,GoodsSellPrice= + tbGood.deGoodsSellPrice + ,; str_Add += GoodsNeedPrice= + tbGood.deGoodsNeedPrice + ,GoodsNoPrice= + tbGood.deGoodsNoPrice + ,GoodsRemark= + tbGood.strGoodsRemark + ,; str_Add += GoodTime= + tbGood.DaGoodTime + ,Falg= + tbGood.Falg + where GoodsID = + tbGood.strGoodsID + ; getSqlConnection getConnection = new getSqlConnection(); conn = getConnection.GetCon(); cmd = new SqlCommand(str_Add, conn); intFalg = cmd.ExecuteNonQuery(); conn.Dispose(); return intFalg; catch (Exception ee) MessageBox.Show(ee.ToString(); return intFalg;3.3.3 小结开发一套完整的超市进销存管理系统,要从实际出发,根据实际需要设计流程图。根据系统数据量选择数据库,分析系统具体需要的模块,对模块要进行严格的编码控制,对于一些常见的错误要进行异常处理。通过对该系统的分析和设计,使我不仅能够掌握超市进销存管理系统的开发流程,而且对开发其他软件也有很好的启发。4开发难点分析 开发超市进销存销售管理系统过程中,用到了触发器。触发器是一种特殊类型的存储过程,当使用update,insert,或delete其中的一种或多种操作在指定表中对数据进行修改时,触发器会生效。触发器可以查询其他表,而且可以包含复杂的SQL语句。他们主要用于强制复杂的业务规则或要求。例如。可以控制是否允许给予客户的当前账户状态插入订单。触发器语句中使用了两种特殊的表:deleted表和inserted表,可以使用这两个临时的驻留内存的表测试某些数据修改的效果及设置触发器操作的条件;然而,不能直接对表中的数据进行更改。Deleted表用于存储delete和update语句所影响的行的副本。在执行delete和update语句时,行从触发器表中删除,并传输到deleted表中。Deleted表和触发器表通常没有相同的行。Inserted表用于存储insert和updat

温馨提示

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

评论

0/150

提交评论