基于ASP的产品销售管理系统设计与实现毕业论文.doc_第1页
基于ASP的产品销售管理系统设计与实现毕业论文.doc_第2页
基于ASP的产品销售管理系统设计与实现毕业论文.doc_第3页
基于ASP的产品销售管理系统设计与实现毕业论文.doc_第4页
基于ASP的产品销售管理系统设计与实现毕业论文.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

基于ASP的产品销售管理系统设计与实现毕业论文目 录第1章 前言11.1 项目背景21.2 项目开发意义31.3 软硬件需求31.4 系统开发平台3第2章 系统需求分析32.1 可行性分析32.2 需求分析4第3章 系统设计53.1 系统功能模块图53.2 功能模块63.2.1采购模块63.2.2销售模块73.2.3库存模块83.2.4统计模块103.3 系统数据流图113.3.1顶层数据流图113.3.2一层数据流图123.3.3二层数据流图(采购模块)133.3.4二层数据流图(销售模块)133.3.5二层数据流图(库存模块)143.3.6二层数据流图(统计模块)143.4 数据库结构设计153.4.1数据库概念结构设计153.4.2数据库逻辑结构设计163.5统架构设计-B/S模式18第4章 系统实现194.1 公用模块及相关技术说明194.1.1 母版页模块194.1.2 GridView204.1.3 StyleSheet.css和web.config214.1.4 基础函数类Class_Base224.1.5 管理导航234.2功能实现234.2.1 登陆管理234.2.2 客户信息管理254.2.3 交易信息管理264.2.4 产品信息管理274.2.5 库存管理294.2.6 销售信息管理304.2.7 数据维护功能324.2.8 登陆信息管理功能334.2.9修改当前用户密码34第5章 结论35主要参考文献35致 谢36第1章 前言管理信息系统(MIS)的概念起成熟于20世纪70年代。管理信息系统(MIS)就是借助以计算机、互联网等先进技术为代表的信息手段,将企业的经营及管理流程在线实现,并使企业管理层真正可以在线获得完整而明晰的“信息”,信息化是一项长期的事业。计算机集成制造系统(CIMS Computer Integrated Manufacturing System)是在自动化技术、信息技术及制造技术的基础上,通过计算机及其软件,把企业全部生产活动所需的各种分散的自动化系统有机的集成起来,是适合于多品种、中小批量销售的总体高效益系统。MIS(管理信息系统)是CIMS中很重要的一个部分,是企业信息化的直接体现。基于ASP的产品销售管理系统,采用B/S结构,后台服务器使用Windows平台,配置IIS 7.5,前端客户端环境Internet Explorer浏览器。用ASP调用SQL Server 2008 数据库管理系统的存储过程大大减少客户机与服务器之间网络数据传输所需的时间。安全性高,实用性强,保密性好,具有良好的开发性,满足现在企业的需求开发,着重产品销售的所有业务管理,提高管理各项产品销售效率。实现了产品采购到财务模块一系列的业务跟踪,可视化的观察业务存在的错误,以及进行及时的调整和管理,安全性高,从而使企业更具有竞争力。该系统主要分为以下几大管理模块,权限管理,客户信息管理,产品信息管理,销售信息管理,用户管理,数据维护管理,退出系统。不同用户拥有不同的权限,便于分模块进行管理。模块之间存在紧密业务连接,从而使数据之间联系更紧密,减少数据出错,提高了企业的效率管理。基于ASP的产品销售管理系统研究目的在于:实现公司产品信息、销售信息管理及信息检索;实现客户信息管理,不同用户,拥有不同的管理权限,根据权限的不同,分工明细。支持多用户,同时在线工作。从而提高公司的工作效率和质量。1.1 项目背景经过20多年的时间,我国企业的信息化建设工作取得了长足进展,但由于对企业信息化建设的途径缺乏系统而科学的认识,以往许多企业的信息化建设工作走了不少弯路,出现了一些误区,其中表现最为明显的倾向,盲目地追求业务处理的自动化、决策自动化等更高层次的信息化建设,而忽视了企业信息库的构建这一信息化建设的第一步基础性工作。这种倾向又有许多不同的形式,在产品销售管理方面具体表现为:(1) 不重实施,急于求成将产品销售管理软件买来即可,对实施的重要性理解不够,急于求成,要求在短时间内见到成效,这些做法是不切实际的。(2) 企业与产品销售管理软件提供商配合不够企业在实施过程中配合不够,企业应通过反复考查和选型,一旦选定了软件,企业应该与产品销售管理软件提供商建立一种长期合作伙伴关系,二者应密切配合,以使所购的产品销售管理软件在企业能充分用好,为企业解决实际问题,带来直接的经济效益。(3) 企业的标准太老或没有标准企业现有的标准太老,不太适合计算机处理。随着制造业信息化的发展,标准化落后于新技术的发展,满足不了企业需求的矛盾逐步显现。这些新技术很快就被利用为企业信息化管理平台,业与企业、个人之间的沟通渠道,最为重要的是保证了不同渠道看到的信息是同步的。这包括客户、供应链和其他各种企业信息。(4) 企业的需求超前企业提出一些超前或不切实际的功能要求,而产品销售管理软件暂时不能满足。有的企业认为越先进的功能越好,在选型过程中一味追求先进,而没有考虑是否实用、是否可靠、是否有局限性等等问题。(5) 企业推行的力度不够企业实施信息化不仅要求产品销售管理软件提供商有丰富的经验和完善的产品,而且需要企业产品销售管理者参与到整个产品销售管理系统的设计和实施中去,否则管理思想就不能与产品销售管理软件技术相结合,从而功亏一篑,所以,企业信息化建设过程中涉及的各方面如产品销售管理系统的应用上与整个企业信息化的发展是同步前进的。1.2 项目开发意义企业产品销售管理系统,基于ASP.NET和SQL Server 数据库开发系统。使用ASP.NET技术可以动态生成管理页面,可以使产品的销售和管理变得很轻松。管理员登陆后只需添加或修改相应产品信息元素就可以了,系统将自动生成对应的信息。而使用SQL Server 数据库将减轻维护人员的工作量,使系统便于维护和管理。1.3 软硬件需求本系统的软硬件需求如下:(1) 在Windows平台上运行(2) 后台数据库:SQL Server 2008 (3) 运行环境:Internet Explorer 、IIS 7.5开发工具Microsoft Visual Studio 2008 使用语言C#.NET数据库SQL Server 2008 开发模式B/S开发环境Microsoft Visual Studio 2008、SQL Server 2008、Internet Explorer 、IIS 7.51.4 系统开发平台第2章 系统需求分析2.1 可行性分析随着经济的不断发展和完善,企业的经营行为正迅速地由以生产为中心转向以营销为中心,通过强化销售来指导生产,从而创造更多的利润。目前,许多企业在销售管理环节上存在着大量的问题,如产品结构不合理、产品库存积压严重等等,这些因素严重制约着企业的发展。为了解决这些问题,决定开发商品销售管理系统。该系统通过对客户、商品库存、销售行为、销售过程等环节的记录、管理,建立弹性和灵活的销售业务流程及制度,从而使企业销售管理工作从经验走向科学。该系统的最终用户涉及高层管理人员,商品采购人员,销售人员,仓库管理人员和财务管理人员。不同的用户拥有不同的访问权限,既方便了各个角色对其本职业务的具体操作,又极大的保证了系统的合理运行和企业数据的安全。2.2 需求分析 (1).客户信息管理实现客户信息的增删改查等功能,并且能查看客户的购买记录。(2).产品信息管理产品信息查询查看:以表格形式呈现数据库中的产品信息,并且允许查找功能。产品信息的增删改管理,以表格形式呈现产品信息,并且有增添新产品的链接,表格上有修改和删除选项直接导入修改页面修改产品信息,或者删除该行。进货入库管理:输入产品编号后可以快速添加该产品的库存数量。退货出库管理:输入产品编号后可以快速减少该产品的库存数量。(3).销售信息管理订单管理:可以显示订单状况,并且打上处理标志,表格方式呈现利于管理。显示销售年份信息:选择销售年份后,即可显示该年份的月供销信息。修改销售年份信息,增加新的销售年份,或者修改原有销售年份中某个年份中的信息,将该年份以表格形式展示12个月份的信息,支持直接在表格上进行修改,查询统计功能:可以显示某年的年供销额,支持自动计算,支持显示图表。(4).库存管理库存统计:以表格形式呈现数据库中的产品库存情况,并且允许查找功能。库存预警:以表格形式呈现数据库中的产品库存情况,只显示库存不足的产品。(5).保密信息管理模块修改当前用户的密码:允许用户修改当前用户的管理员登陆密码。(6).用户管理用户查询:允许总经理级别管理员查看所有后台管理员的账号,同样以表格方式呈现,显示出用户的姓名,地址,电话等信息。用户的增删改:以表格形式呈现用户信息,并且有增添新用户的链接,表格上有修改和删除选项直接导入修改页面修改用户信息,或者删除该行。(7).数据维护该功能可实现对数据的备份和还原,保证数据的可恢复性和安全性。(8) .退出系统:离开本系统。第3章 系统设计3.1 系统功能模块图图1 销售管理系统功能模块图 3.2 功能模块3.2.1采购模块 采购模块概述采购模块实现了对商品的状态统计,包括采购商品,未采购商品,采购人员的信息,商品采购时间等。用户通过次模块能够清晰的了解到什么人,什么时间采购了那些商品,以及什么人,在什么时间需要采购哪些商品。采购模块流程图图2 采购模块流程图3.2.2销售模块销售模块概述销售模块实现了对商品销售业务的管理。工作人员通过使用该模块可以查找到库存的商品的基本信息,填写并保存销售清单,进行用户结算等操作。销售模块流程图图3 销售模块流程图3.2.3库存模块库存模块概述该模块负责统计仓库中商品的明细,并实现对商品的出库和入库操作。通过使用该模块,仓库管理人员可以方便高效的实施商品的出库,入库管理,并可以准确快速的查找商品的库存信息库存模块流程图(1) 入库管理图4 入库管理流程图(2) 出库管理图5 出库管理流程图 3.2.4统计模块统计模块概述统计管理实现了对商品库存,采购单据,销售单据的详细,多样的查询功能。实现的财务部门对库存和财务的盘点功能。统计模块流程图图6 统计模块流程图3.3 系统数据流图3.3.1顶层数据流图数据流图是结构化分析方法中用于表示系统逻辑模型的一种工具。它以直观的图形清晰地描述了系统数据的流动和处理过程,图中没有任何具体的物理元素,主要强调的是数据流和处理过程。即使不是计算机专业技术人员也很容易理解,数据流图是软件开发人员和用户之间很好的通信工具。图7为本系统的数据流图顶层图,它体现了系统名称: F= f1客户信息+f2产品信息+f3销售信息+f4库存信息F1=f2产品信息+f3销售信息图7 数据流图顶层图3.3.2一层数据流图数据流0层图体现了系统的主要功能框架,本系统的0层图如图8所示:图8 一层数据流图3.3.3二层数据流图(采购模块)图9 采购模块二层数据流图3.3.4二层数据流图(销售模块)图10 销售模块二层数据流图3.3.5二层数据流图(库存模块)图11 模块二层数据流图3.3.6二层数据流图(统计模块)图12 统计模块二层数据流图3.4 数据库结构设计3.4.1数据库概念结构设计本系统的E-R图如图13所示:用户实体:记录登陆该系统的用户的相关信息。产品实体:记录产品的相关信息。销售年份实体:记录销售年份的相关信息。客户实体:记录客户的相关信息。订单实体:记录订单的相关信息。历史订单实体:记录历史订单的相关信息退还货信息实体:记录退换货的相关信息图13 各实体间的ER图3.4.2数据库逻辑结构设计数据库结构设计是整个系统中最重要的组成部分,用以实现用户的各种操作,以下分别进行介绍。企业产品销售管理系统数据库是由8张表组成。表1 产品销售管理系统数据库表ID数据表名称数据表用途1用户表保存登陆该系统的所有用户的信息2销售年份表保存销售年份的销售信息3销售年表保存销售年信息4退换货表保存退换货信息5历史订单表保存历史订单信息6客户表保存客户信息7订单表保存订单信息8产品表保存所有产品的相关信息表2 用户表字段类型长度说明用户名varchar20用户名密码varchar20密码用户类型varchar20用户类型真实姓名varchar20真实姓名电话varchar20电话地址varchar200地址表3 销售年份表字段类型长度说明年份nchar10年份月份int4月份销售额float999999999销售额销售利润float999999999销售利润表4 销售年表字段类型长度说明年份nchar10年份表5 退货表字段类型长度说明姓名nchar10姓名产品名称nchar50产品名称退/换货nchar50退/换货数量int99999999999数量提交时间datetimer50接收时间是否处理bit4是否处理表6 历史订单字段类型长度说明姓名nvarchar10姓名产品名称nvarchar20产品名称购买时间datetime50购买时间购买数量int99999999999购买数量处理时间datetime50处理时间表7 客户表字段类型长度说明客户编号nvarchar10客户编号姓名nvarchar10姓名性别nchar1性别年龄int6年龄电话nvarchar20电话地址nvarchar50地址表8 订单表字段类型长度说明订单编号nchar10订单编号姓名nchar10姓名产品名称nchar10产品名称购买数量int99999999999购买数量下单时间nchar50下单时间是否处理bit2是否处理表9 产品表字段类型长度说明产品编号nvarchar10产品编号产品名称nvarchar20产品名称产品产地nvarchar20产品产地产品型号nvarchar20产品型号产品介绍nvarchar1000产品介绍添加日期datetime50添加日期数量int99999999999数量3.5统架构设计-B/S模式 随着网络规模的日益扩大,应用程序的复杂程度不断提高,传统的数据库应用架构已经不能胜任。为了充分利用网络资源,实现信息最大程度的共享。Browser/Serve结构伴随着Intemet的发展而很快地发展起来。Browser/Serve体系结构是一种三层结构,其三级结构组成如图14所示:图14 B/S结构示意图第4章 系统实现4.1 公用模块及相关技术说明4.1.1 母版页模块图15 母版页模块母版页是 ASP.NET 2.0 的一项功能,其工作方式与 Windows SharePoint Services 3.0 和 Office SharePoint Server 2008 在 ASP.NET 2.0 中的工作方式相同。利用母版页,您可以创建单个网页模板并在应用程序中将该模板用作多个网页的基础,这样就无需从头创建所有新网页。为了在浏览器中呈现,母版页实际上要求两个独立的部件,即母版页自身和内容网页。母版页定义公用布局和导航栏,以及附加到该母版页的所有内容网页的默认公用内容。在浏览器中呈现网页时,母版页提供公用内容,而内容网页则提供该网页所特有的内容。以下代码是母版页中的内容位置,将会被其他页面替代。 同时在母版页加入了一个ScriptManager,作为服务器端的控件,ScriptManager 回应 ASP.NET 页面生命周期中的事件,利用这些事件协调 ASP.NET AJAX 使用的所有控件、选项和代码的活动。ScriptManager 将关联某一特定事件,当事件发生时获得通知,并根据环境配置多个设置;此过程将通过 ASP.NET 页面的呈现循环多次重复进行。同时在母版页上设计了一个时间指示的文本标签,该Label能自动获取当前时间并进行显示,主要是由后台的代码实现,在这里说明一下Page_Load函数,这是一个后台由系统自动调用的函数,在页面读入或者回发的时候均会触发这个函数,执行里面的函数体,在这边对Label进行赋值,其内容由系统内置的类DateTime来自动获取当前时间,并由ToString按照M月d日 H时m分的格式转换成字符串,完成显示。protected void Page_Load(object sender, EventArgs e) Label1.Text = DateTime.Now.ToString( M月d日 H时m分, DateTimeFormatInfo.InvariantInfo); 4.1.2 GridView在有表格呈现的地方采用GridView控件来实现,GridView控件显示表格的参数繁多,功能强大,以Cus_View.aspx来说明,首先放入一个GridView控件并且调整其外观参数,GridView的外观参数非常多,这里用到了间隔行不同的外观设定,即可得到如下图所示的效果。图16 GridView控件实现表格显示数据外观设定完毕后,对不同的列,根据数据库中的列名,依次进行设置,HeaderText设置该列第一行表头的文字,DataField设置数据库中的列名,绑定的时候将显示其在数据库中的数据部分。列又分为BoundField,CheckBoxField,HyperLinkField,ImageField,ButtonField,CommandField,TemplateField。本系统将使用其中的5种,BoundField是文字区域,普通数据则使用BoundField,如果当前列是可以点击的超链接,则使用HyperLinkField,HyperLinkField的设置里有导航地址,可以设置如”/abc.aspx?id=0”的格式,由0表示该行的值,这样的格式将使每一行导向不同的页面。单选框Field的Value设置由True或False控制,而最重要的CommandField则提供了删除,更新的操作,与其他控件相同,设置了OnRowDeleting和OnRowUpdating后在后台设置其执行函数。执行函数采用SQL语句,DELETE,UPDATE来操作数据库,具体实现可以从源代码中查看,关于GridView的数据绑定,同样也要用到SQL的Select语句,由实例化的BaseClass1中的ReadTable获取某个数据表内的数据,然后用DataBind方法来绑定数据。关于GridView的分页,采用了两种方法实现,其一是内部提供的方法,控件提供下面的页码索引和上一页、下一页等按钮,只需给响应事件的函数GridView1_PageIndexChanging添加改变页码和重新绑定的C#代码即可。另一种则用到了新的类PagedDataSource,由该类来为数据表分页,并且需要自己编写函数实现翻页功能,其优点是有更大的灵活性,可以自由安排翻页控制的显示方式,例如还可以显示总页数,当前页码等额外信息。由于很多情况下页面没有办法填充整个PageSize,而控件本身也不提供自动填充的功能。所以本系统使用了GridView1_DataBound响应函数,在其中计算该页欠缺的行数,然后进行填充,生成足够多的新行,并且给每行的所有单元格附上一个空格。4.1.3 StyleSheet.css和web.config图17 StyleSheet.css和web.configStyleSheet.css是外部链接样式表文件,在该文件内部定义好css样式后,链接该文件如下,即可使用 id=”xxx” 来引用StyleSheet.css中定义的样式。 定义样式的格式,例子:#MainDiv width: 740px; margin-top: 0px; margin-left:auto; margin-right:auto;而web.config是一些网站的具体设置,其中大部分设置除了可以编辑该文件来实现外,还可以通过图形界面的设置来修改该文件,在这里需要将数据库的ConnectionString内容放在web.config里面,具体内容为: 其中,Data Source=.SQLEXPRESS表示这里使用的是SQL Server Express,AttachDbFilename=|DataDirectory|db.MDF表示数据库文件是本地目录下的APPDATA目录下的db.MDF, Integrated Security=True;User Instance=True是安全性设置以及是否新建用户例程的选项。4.1.4 基础函数类Class_Base在App_CODE中新建一个.cs文件,该文件包含了一个命名空间GROUP.Base。在命名空间下设立基础的SQL调用函数类Class_Base,该类主要由以下几个函数构成,完成的功能包括,执行SQL语句,读写数据表DataTable,读写数据集DataSet,获得数据集DataSet,获得SQLDataReader,以及读取一行中的某个字段的值。其内容按照ADO.NET数据模型来设计,具体内容见下。/读写数据表public DataTable ReadTable(String strSql)/读写数据集public DataSet ReadDataSet(String strSql)public DataSet GetDataSet(String strSql, String tableName)public SqlDataReader readrow(String sql)/读某一行中某个字段的值public string Readstr(String strSql, int flag)public void Execsql(String strSql)ReadTable:该函数返回类型为DataTable ,首先创建一个数据表dt,定义一个新的连接控件并且初始化,打开连接,定义初始化新的连接适配器并且用来填充数据到dt,关闭连接,返回这个dt。ReadDataSet:该函数返回类型为DataSet,首先创建一个数据集ds,定义一个新的连接控件并且初始化,打开连接,定义初始化新的连接适配器并且用来填充数据到ds,关闭连接,返回这个ds。GetDataSet:该函数返回类型为DataSet,首先创建一个数据集ds,定义一个新的连接控件并且初始化,打开连接,定义初始化新的连接适配器并且用来填充数据到ds,关闭连接,返回这个ds。同上一个函数相比多了一个参数,Readrow:该函数的返回类型为SqlDataReader,定义一个新的连接控件并且初始化,打开连接,定义初始化新的连接适配器,关闭连接,若Reader中有数据则返回。Readstr:该函数返回类型为string,首先创建一个数据集ds,定义一个新的连接控件并且初始化,打开连接,定义初始化新的连接适配器并且用来填充数据到ds,关闭连接,返回这个ds中的某个元素。Execsql:定义一个新的连接控件并且初始化,打开连接,执行SQL语句,关闭连接。4.1.5 管理导航当用户验证成功时,进入管理页面,管理页面左侧是导航树,该树是由ASP.NET提供的控件TreeView构成。不同权限的页面,由完整和部分的树组成。TreeView控件的外观调整与其他ASP.NET控件类似,不再复述。而里的内容部分则以 来表示,其中Text是文字标签,Value是Node的值,用于区分不同Node,可以互相嵌套,以区分树根,树枝和树叶,形成一个完整的树的如图18所示图18 管理导航树导航树的点击事件由switch (TreeView1.SelectedNode.Text) 语句来完成,对每个不同的点击,判断其Value值,用改变this.iframe1.AttributesSrc到不同的页面。右侧是功能实现的主面板,即iframe1。Iframe相当于在浏览器内又设置了一个小型浏览器,在内部显示不同的网页和外部没有影响,而且浏览器地址栏也不会显示出iframe里页面的URL,对保护整个系统不被侵犯有很大作用。其默认值是一个欢迎页面。4.2功能实现4.2.1 登陆管理 该功能主要由左边的IMG控件和右边的Login控件组成,左边的IMG控件使用较为简单,指定大小和图片的URL即可实现图片的显示:而右边的登陆窗口,则需要进行复杂的设置: 其中我们需要对外观进行设置,其中包括BackColor(背景颜色),BorderColor(边框颜色),BorderPadding(边框距离),BorderStyle(边框样式),BorderWidth(边框宽度),Font-Names(字体),Font-Size(字号),ForeColor(字体颜色),以及Height(高度),Width(宽度),这仅是外框的Style,内部TextBox的样式设置了文字大小和宽度,登陆按钮设置了背景颜色,边框颜色,边框样式,边框宽度,字体,字号,字体颜色等不再说明。进行完外观设置以后,在OnAuthenticate时间里面添加函数名Login1_Authenticate1,该按钮将触发后台定义的函数Login1_Authenticate1。我们对Login1_Authenticate1进行如下定义: string strsql = select * from 用户 where 用户名 = + Login1.UserName.ToString() + and 密码 = + Login1.Password.ToString() + ; DataTable dt = new DataTable(); dt = BaseClass1.ReadTable(strsql); String usertype = BaseClass1.Readstr(strsql, 2); if (dt.Rows.Count 0) Sessionadmin = Login1.UserName.ToString(); Sessiontype = usertype; if (usertype = 总经理) Response.Redirect(admin_default.aspx); if (usertype = 部门经理) Response.Redirect(mag_default.aspx); 当触发函数Login1_Authenticate1开始运行时,首先进行SQL查询,选择输入的用户名和密码匹配的行,保存到数据表dt,如果dt中的行大于0,即有匹配的行,则将用户名存入Session中的admin字段,将用户类型存入Session中的type字段,并进行用户类型的选择,分别导入两个不同页面,跳转页面采用的是Response类下的Redirect方法。通过在所有页面的Page_Load方法里面加入以下代码来验证是否是合法用户,只有合法用户的Session“admin”值才能通过验证,否则强行跳转至登陆页面。 if (Sessionadmin = null | Convert.ToString(Sessiontype)!=总经理) Response.Redirect(Default.aspx); 图19 登陆界面4.2.2 客户信息管理查看客户信息:本部分由上面的查询模块和下面的数据表格模块组成,数据表格部分由4.1.2章节的GridView提供,查询功能的按钮事件代码如下:Response.Redirect(/customer/cus_find.aspx?id= + TextBox1.Text);这里解释一下后面的?id=的部分,这是ASP.NET提供的QueryString传递参数的功能。QueryString 集合是在 ServerVariables 集合中 QUERY_STRING 变量的分析版本 。它可以让您以名称检索 QUERY_STRING 变量。Request.QueryString (参数) 的值是出现在 QUERY_STRING 中所有参数 的值的数组。通过调用 Request.QueryString(parameter).Count 可以确定参数有多少个值。如果变量未关联多个数据集,则计数为1。如果找不到变量,计数为0。通过QueryString将输入的查询字符串传递给cus_find.aspx。在这个页面中将传递过来的参数id放入SQL查询中,检查出符合条件的行用GridView进行显示。同理,点击客户信息中姓名行将跳转至查看该客户的历史购买记录,同样利用了参数传递的QueryString。图20 查看客户信息4.2.3 交易信息管理使用GridView显示数据包括历史购买记录,退换货记录和客户订单信息。这个部分主要进行数据的呈现操作,实现方法即建立GridView绑定DataTable中的对应项,DataTable则由数据库查询得到。GridView提供了很多外观设定,例如可以另隔行颜色有差异,由此我们可以得到漂亮美观的表格。图21 交易信息管理4.2.4 产品信息管理查看产品信息本部分由上面的查询模块和下面的数据表格模块组成,数据表格部分由4.5章节的GridView提供,查询功能的按钮事件代码如下:Response.Redirect(/customer/cus_find.aspx?id= + TextBox1.Text);这里解释一下后面的?id=的部分,这是ASP.NET提供的QueryString传递参数的功能。QueryString 集合是在 ServerVariables 集合中 QUERY_STRING 变量的分析版本 。它可以让您以名称检索 QUERY_STRING 变量。Request.QueryString (参数) 的值是出现在 QUERY_STRING 中所有参数 的值的数组。通过调用 Request.QueryString(parameter).Count 可以确定参数有多少个值。如果变量未关联多个数据集,则计数为1。如果找不到变量,计数为0。通过QueryString将输入的查询字符串进行传递。在这个页面中将传递过来的参数id放入SQL查询中,检查出符合条件的行用GridView进行显示。图22 查看产品信息产品信息管理原理同用户信息管理,不同点是增加了添加新产品的链接,可以进入如果编辑产品信息的页面,输入新产品信息数据后,由提交按钮触发Insert的SQL语句将新信息写回数据库,完成产品增添操作。图23 产品信息管理进、退货管理当进入此页面时,只能进行输入产品编号提交的操作,进退货提交操作的按钮处于Disable的状态,呈现为灰色。当输入产品编号提交后,由Readrow读出一行信息,将信息各个部分填写入不同的文本框内,不能进行修改,并且使下面的进退货提交按钮处于Enable的状态,当输入进退货数量并提交后,后台首先计算出操作后的产品数量,然后Update回数据库。图24 退货管理4.2.5 库存管理库存统计库存管理的统计部分是为用户提供一个简洁的库存表,可以方便查看各个产品的库存数量,当月销售量,使用GridView来绑定数据,进行直观、直接的显示,为市场研销提供有效参考数据。图25 库存统计库存预警在库存预警页面,由Select语句的限定条件 0) e.IsValid = false; 方法是进行SQL查询,若有查询到即存在该用户名,则设置IsValid为false,显示出错信息。4.2.9修改当前用户密码当用户输入原密码、新密码和重复新密码,系统需要完成以下几件事。验证所有的输入框均有数据存在,使用RequireFieldValidator。验证两次输入密码是否一致,使用CompareValidator。验证原密码的正确性,在SELECT后进行检查,如果正确则UPDATE否则提示错误。如果修改成功,弹出对话框提示。图33 修改用户密码第5章 结论基于ASP产品销售管理系统采用B/S架构,灵活性强,运行维护简便,实现不同的人员,从不同的地点,以不同的接入

温馨提示

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

评论

0/150

提交评论