当前位置:文档之家› 企业进销存管理系统精编

企业进销存管理系统精编

企业进销存管理系统精编Document number:WTT-LKK-GBB-08921-EIGG-22986石家庄学院课程设计报告课程名称:数据库原理与应用设计题目:企业进销存管理系统院系:计算机系专业:计算机科学与技术班级:班设计者:及学号:刘彩彦 95 乔学云 93张晶晶 96 张翠 01张凯亮 90指导教师:2 010年1月1日小组分工情况:张凯亮:基础信息模块乔学云:采购管理模块往来管理模块刘彩彦:库存管理模块系统设置模块张晶晶:商品销售模块张翠:查询统计模块1 系统分析需求分析通过调查,要求系统需要具有以下功能:由于操作人员的计算机知识普遍较差,要求有良好的人机界面。

由于该系统的使用对象多,要求有较好的权限管理。

方便的数据查询,支持多条件查询。

基础信息管理与查询(包括商品信息、客户信息、供应商信息)。

通过计算机,能够直接“透视”仓库存储情况。

完善的商品采购信息、商品销售信息进行管理。

方便、健全的结账功能。

图表分析年销售状况。

商品销售排行统计。

当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。

数据计算自动完成,尽量减少人工干预。

系统退出。

可行性分析通过计算机网络系统对企业进行全面的管理,满足了企业的现代化管理的要求。

经济性企业营运过程中信息的系统化管理,权威的数据统计,为企业的经营决策提供了大量的、权威的科学依据(数据);强大的账单结功能,简化了员工的日常工作,提高了工作效率,避免了人工管理过程中数据易错所带来的一系列的连锁反映,提高企业的经济效益。

技术性实际情况下,在高系统配置、高网络带宽服务,各个级别管理员很容易通过网站对其操作范围内的系统内容信息进行操作管理,完全满足日常经营、管理的要求。

2 总体设计项目规划企业进销存管理系统是一个典型的数据库开发应用程序,由基础信息模块、采购管理模块、库存管理模块、商品销售模块、查询统计模块、往来管理模块、系统设置模块等部分组成,规划系统功能模块如下:基础信息模块该模块主要管理商品信息录入、客户信息录入、供应商信息录入、商品信息查询、客户信息查询、供应商信息查询。

采购管理模块该模块的主要管理商品采购信息录入和商品采购信息查询。

库存管理模块该块主要管理商品入库信息、商品入库退货、商品库存查询和库存商品价格调整。

商品销售模块该模块主要管理商品销售信息录入和商品销售退货信息录入。

查询统计模块该模块主要管理销售信息查询、销售退货查询、商品入库查询、入库退货查询、商品销售排行和年销售额分析。

往来管理模块该模块主要管理商品销售结账、入库退货结账、销售结账查询、商品入库结账、销售退货结账和入库结账查询。

系统设置模块该模块主要管理添加操作员、更改操作员密码、删除操作员。

系统功能结构图企业进销存管理系统功能结构如图1所示。

图1 系统功能结构图3 系统设计设计目标本系统是针对中小型企业运营进销存过程所进行设计的,主要实现如下目标:系统采用人机对话方式,界面美观友好、信息查询灵活、方便、快捷、准确、数据存储安全可靠。

强大的销售结账功能。

全面的账单查询功能。

功能强大的年销售额分析图、商品销售排行统计。

实现各种查询,如多条件查询、模糊查询等。

操作员可以随时修改自己的口令。

对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。

数据保密性强,为每个用户设置权限级别。

系统最大限度地实现了易安装性、易维护性和易操作性。

系统运行稳定、安全可靠。

开发及运行环境硬件平台:CPU:。

内存:256MB以上。

软件平台:操作系统:Windows XP/ Windows 2000。

数据库:SQL Server 2000。

编码设计编码设计是数据库系统开发的前提条件,是系统不可缺少的重要内容。

编码是指与原来名称对应的编号、符号或记号。

它是进行信息交换、处理、传输和实现信息资源共享的关键。

编码也用于指定数据的处理方法、区别数据类型,并指定计算机处理的内容等。

本系统内部信息编码采用了统一的编码方式情况。

(1)采购编号为字母“cg”、系统当前日期的年限和5位数字编号的组合。

例如,cg5。

(2)入库单据编号为字母“RK”、系统当前日期和3位数字编号的组合。

例如,RK001。

(3)入库退货单据编号为字母“RT”、系统当前日期和3位数字编号的组合。

例如,RT002。

(4)销售单据编号为字母“XS”、系统当前日期和3位数字编号的组合。

例如,XS003。

逻辑结构设计本系统数据库采用SQL Server 2000数据库,系统数据库名称为sell。

数据库sell中包含24张表。

1.数据表概要说明为了对本系统后台的数据库中数据表有一个更清晰的认识,下面设计了一个数据表树型结构图(如图2所示),该数据表树型结构图包含系统所有数据表。

图2 数据表树型结构图2.数据表的结构关于数据库中的数据表请参见附录B。

4 网站总体架构1.模块功能介绍网站首页主要包括以下功能模块:基础信息:实现对客户、商品、供应商基础信息的管理及信息检索功能。

主要包括客户信息管理、商品信息管理、供应商信息管理、客户信息查询、商品信息查询和供应商信息查询6部分。

采购管理:实现对商品采购信息进行管理及采购信息检索功能。

主要包括商品采购和采购查询两部分。

库存管理:实现对商品入库、退货、库存查询及价格调整等信息的综合管理。

主要包括商品入库、商品入库退货、库存查询和价格调整4部分。

商品销售:实现对商品销售信息及退货信息进行管理的功能。

主要包括商品销售和商品销售退货两部分。

查询统计:实现对进、销商品信息的查询汇总,并实现按销售商品进行排行和对年销售额进行分析等功能。

主要包括销售信息查询、销售退货查询、商品入库查询、入库退货查询、商品销售排行和年销售额分析6部分。

往来管理:实现在线的个人与企业、企业与企业之间的进、销商品往来结账的综合管理。

主要包括商品销售结账、入库退货结账、销售结账查询、商品入库结账、销售退货结账和入库结账查询6部分。

系统设置:实现对操作员信息进行维护。

主要包括添加操作员、更改操作员密码和删除操作员3部分。

2.首页运行结果企业进销存管理系统网站首页的运行结果如图3所示。

图3 网站首页的运行结果首页的各部分说明以列表形式给出,如表1所示。

表1 首页解析区域名称说明对应文件1网站主导航区主要用于显示网站的旗帜广告条及为用户提供网站的功能导航2网站子导航区主要用于管理功能导航3功能操作区主要用于完成各种管理功能13424退出登录主要用于退出企业进销存管理系统5 用户登录模块设计用户登录页面比较简单,为防止用户的错误操作,应设置错误处理页面。

在登录操作中,一般发生的错误有:用户输入了错误的用户名或密码;或用户直接单击了【登录】按钮。

对上述情况的判断,我们就要通过ASP文件来实现。

用户登录页面的设计效果如图4所示。

图4 用户登录页面的设计效果用户登录页面中涉及的HTML表单元素如表2所示。

表 2 用户登录页面中涉及的HTML表单元素利用JavaScript编写检测用户输入信息是否合法的函数,并通过单击【确定】按钮调用该函数,判断用户名或密码是否为空,如果为空,系统将给予提示。

当用户输入合法信息后,提交该表单,完整代码如下:<script language="javascript">function check(myform){if ""){ Timeout=30'设置Session的过期时间为30分钟session("ulogin")="no"came=trim(request("username")) '获取用户名pass=("PWD") '获取密码pass=replace(pass,"'","")set conn=("")set comm.=("") '创建对象application("dsn") '打开数据库set =conn=adcmdstoredproc="checklogin"set mpf=("cname",advarchar,adparaminput,20)mpfset mps=("pass",advarchar,adparaminput,20)mpscomm.("came")=camecomm.("pass")=passset rs=if then("<script language='JavaScript'>alert('请输入正确的用户名和密码');'';</script>")'弹出提示对话框,并转向指定页面elsesession("id")=rs("id")session("name")=rs("name")session("quan")=rs("quan")session("ulogin")="yes""" '跳转到管理页面end if%>在理解了Session的基础上,我们知道上述代码首先是把存储用户信息并与客户端保持关联的Session("ulogin")初始化,赋予空值。

在接收数据库后,打开数据库,取出标识符,把它赋给Session("ulogin")。

如果不存在该用户,则弹出错误提示,并跳回到登录页面。

用户登录页面的运行结果如图5所示。

图5 用户登录页面的运行结果6 网站首页设计网站首页采用框架技术将菜单导航区和主体控制区分装在两个框架里,以便在同一个页面中管理多个页。

菜单导航区顾名思义,主要用于实现网站首页管理功能的导航;主体控制区主要用于显示每个管理模块的内容。

网站首页主要包括以下功能模块:菜单主导航区:主要用于显示网站的旗帜广告条及为用户提供网站的功能导航。

菜单子导航区:主要用于管理功能导航。

主体操作区:主要用于完成各种管理功能。

退出登录:主要用于退出企业进销存管理系统。

菜单主导航区的完整代码如下:<html><head><title>企业进销存管理系统</title><meta http-equiv="Content-Type" content="text/html;charset=gb2312"></head><frameset rows="99,*" cols="*" framespacing="0" frameborder="no" border="0"><frame src="" frameborder="no" scrolling="no"><frame src="" name="mainF" scrolling="auto"></frameset><noframes><body></body></noframes></html>菜单子导航区的关键代码如下:<%=true=0if session("ulogin")<>"yes" then '判断是否登录("<script>''</script>") '重新定向页面()end if%><a href="#" onClick="Fsubmenu('基础')">基础信息</a>|<a href="#" onClick="Fsubmenu('采购')">采购管理</a>|<a href="#" onClick="Fsubmenu('库存')">库存管理</a>|<a href="#" onClick="Fsubmenu('销售')">商品销售</a>|<a href="#" onClick="Fsubmenu('查询')">查询统计</a>|<a href="#" onClick="Fsubmenu('往来')">往来管理</a>|<a href="#" onClick="Fsubmenu('系统')">系统设置</a><script language="JavaScript" >var today=new Date();var month=()+1if ()==1){("&nbsp;"+()+"年"+month+"月"+()+"日星期一");} if ()==2){("&nbsp;"+()+"年"+month+"月"+()+"日星期二");} if ()==3){("&nbsp;"+()+"年"+month+"月"+()+"日星期三");} if ()==4){("&nbsp;"+()+"年"+month+"月"+()+"日星期四");} if ()==5){("&nbsp;"+()+"年"+month+"月"+()+"日星期五");}if ()==6){("&nbsp;"+()+"年"+month+"月"+()+"日星期六");}if ()==0){("&nbsp;"+()+"年"+month+"月"+()+"日星期日");}</script>......<script language="javascript">function Fsubmenu(value){switch (value){case "基础":="<a href='jcxx/' target='mainF'>客户信息管理</a>|<a href='jcxx/' target='mainF'>商品信息管理</a>|<ahref='jcxx/' target='mainF'>供应商信息管理</a>|<ahref='jcxx/' target='mainF'>客户信息查询</a>|<ahref='jcxx/' target='mainF'>商品信息查询</a>|<ahref='jcxx/' target='mainF'>供应商信息查询</a>";break;case "采购":/conn/"--><%set rs=("")if ("type")="all" then '显示全部内容sql="select * from tab_cgdan"elseflag=("flag")i=0 '为变量赋初始值if flag<>"" thenif instr(flag,"1")>0 then '当有一个条件时进行相应的处理sel=("sel")tj=("tj")qname=("qname")i=1flag_deal="inIF"end ifif instr(flag,"2")>0 then '当有两个条件时进行相应的处理sdate=("sdate")edate=("edate")i=i+1flag_deal="inDate"end ifif i>1 thenflag_deal="double"end ifsession("flag")=flag_deal '创建Session 变量session("sel")=selsession("tj")=tjsession("qname")=qnamesession("sdate")=sdatesession("edate")=edateend if'查询条件判断select case session("flag")case "inIF"if session("tj")="=" then '精确查询sql="select * from tab_cgdan where"&session("sel")&" = '"&session("qname")&"' "else '模糊查询sql="select * from tab_cgdan where"&session("sel")&" like '%"&session("qname")&"%'"end ifcase "inDate" '日期查询sql="select * from tab_cgdan where cgdate between '"&session("sdate")&"' and'"&session("edate")&"'"case "double" '多条件的精确查询if session("tj")="=" thensql="select * from tab_cgdan where"&session("sel")&" = '"&session("qname")&"' and cgdate between '"&session("sdate")&"' and'"&session("edate")&"'"else '多条件的模糊查询sql="select * from tab_cgdan where"&session("sel")&" like '%"&session("qname")&"%' and cgdate between '"&session("sdate")&"' and'"&session("edate")&"'"end ifcase else("") '重新定向到指定页面end selectend ifsql,conn,1,3if then%><script language="JavaScript">alert("没有找到您要查询的记录!") '弹出提示对话框(1) '返回上一级页面</script><%()end if%>采购查询页面的运行结果如图14、图15所示。

相关主题