1、销售系统实验报告 安徽电子信息职业技术学院Oracle数据库课程设计报告系 部: 软件学院 专 业: 计算机信息管理 班 级: 信管101 姓 名: 胡俊杰 刘义 指导教师: 陈俊生 二 零 一 二 年 六 月 二十五 日目录第一章 需求分析 31. 需求分析设计思想 32编写目的 43.项目背景 44. 名词说明 55.功能要求 56功能描述 67.待开发软件的功能 68数据安全性和完整性要求 79.使用环境 810.使用环境 8第二章 概念结构设计 81 分E-R图 82基本E-R图 12第三章 逻辑结构设计 13第四章 数据库的物理结构 141.数据库文件 141. 创建初始化参数文件
2、151.1 数据结构及代码实现 151.2 功能代码实现 182视图结构 263正确性 264.可靠性 265.完整性 266.易使用性 267.可维护性 278.可测试性 279.安全保密性 2710.互联性 27第五章 总结 27附录 27参考文献 27总结 27第一章 需求分析1. 需求分析设计思想需求分析简单地说就是分析用户的要求。需求分析是设计数据库的起点,需求分析的结果准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。进销存管理的思想是:从客户需要和供应情况出发来规划企业的生产经营活动,在大量的客户信息和供应商信息分析的基础上确定本企业最优
3、的产品组合等问题。在市场经济中,销售是企业运作的重要环节,为了更好地推动销售,不少企业建立了分公司或代理把产品推向最终用户。这些分公司或代理商大都分布在全国各地,甚至是在国外,远距离频繁的业务信息交流构成了这些企业业务活动的主要特点。在传统方式上,公司之间通常采用电传、电报、电话等方式传递订货、发货、到货、压货、换货、退货等信息,总公司的商务部门在接到分公司或代理商传来的订单和银行汇款单据传真后,开据产品出库通知,然后再把相关的进、销、存信息手工存档,再对这些信息进行统计分析,才能了解到整个公司的生产、销售和库存情况。这种信息传递、管理方式不仅效率低,可靠性、安全性和保密性都无法满足要求,而且
4、数据统计时间严重滞后,往往是当领导了解到企业的“进、销、存”出现问题时,就已经远离了问题出现的时间和地点。即便是没有分公司的企业,使用传统的手工方式管理也存在同样的问题。通过进销存管理系统,及时通过网络把决策信息传统到相关决策人,从而可以及时发现问题,解决问题,更好地把握机会。进销存管理是一项非常繁琐复杂的工作,每天要处理大量的单据数据,包括入库、出库、退库、调库等多项货物操作流程。为及时结清每笔业务和货物流动情况,保证企业生产用料以及货物安全,企业要花费大量人力物力和时间来做数据记录及统计工作。因此,为提高库管工作的质量和效率,就必须根据特点与需要开发进销存管理信息系统。通过调查、收集与分析
5、,用户对数据库的要求主要有:在本系统中,数据库主要存储的信息包括仓库管理员、业务员、仓库、供应商、客户与库存的基本信息。主要完成的功能为:当企业和新的供应商取得合作的时候,需要对供应商的信息进行入为管理,当供应商的信息发生变化时,需要对其进行修改或者删除。当企业拥有新的顾客的时候,需要对顾客的信息进行管理,当顾客的信息发生变化时,需要对其进行修改或者删除。当企业的仓库中新增了商品的时候,需要对商品的信息进行入库管理,当市场发生变化,商品的信息也需要同步修改。当企业具有进销过程的时候,需要随时记录进销信息,以便随时掌握和了解企业的业务状况,了解企业的利润状况。系统应该具有查询所有信息的功能。进销
6、存管理信息系统通过对客户关系、销售行动等环节的记录、管理与分析,使管理从经验走向科学,从企业的的进销存管理的主要需求出发,可以为企业建立弹性化和灵活性的业务流程。2编写目的当今社会进销存管理系统对企业经营来说是不可缺少的一部分,它所包含的功能对于单位的决策者和管理者来说都至关重要,所以进销存管理系统对使用者来说起到了举足轻重的地位。本进销存管理系统主要涵盖了进货、销售、仓库存货三方面。目前许多企业在销售管理上存在许多问题。本系统中的销售管理是通过对客户关系、销售行动等环节的记录、管理与分析,使销售管理从经验走向科学,从企业的销售管理的主要需求出发,从而为企业建立弹性化和灵活性的业务流程。仓库存
7、货管理是一项非常繁琐复杂的工作,它同时也贯穿了进货所涉及到的事宜,企业仓库中每天要处理大量的单据数据,包括入库、出库、等多项货物操作流程。为及时结清每笔业务和商品流动情况,为保证企业的正常经营,企业要花费大量人力物力和时间来做数据记录及统计工作。通过本系统可以及时的对仓库中商品的流动情况进行管理、并且由仓管员具体负责一切事宜。本系统是经过市场调查,并针对用户的需求,从而进行设计的,本实验预期的读者为软件管理人员,开发人员,维护人员。3.项目背景项目名称:库存管理系统开发者:库存管理系统开发小组预期用户:管理人员参照系统:以前的库存管理系统4. 名词说明库存管理系统:库存管理系统是销售管理软件的
8、通俗化名称,库存管理系统是管理客户档案、销售线索、销售活动、业务报告、统计销售业绩的先进工具,适合企业销售部门办公和管理使用,协助销售经理和销售人员快速管理客户、销售和业务的重要数据。5.功能要求要提高市场竞争力,既要有好的产品质量,同时也要有好的客户服务。企业要作到能及时响应客户的产品需求,根据需求迅速生产,按时交货,就必须有一个好的计划,使得市场销售和生产制造2个环节能够很好地协调配合。进销存管理系统是商业企业经营管理中的核心环节,也是一个企业能否取得效益的关键。如果能做到合理生产、及时销售、库存量最小,减少积压,那么企业就能取得最佳的效益。由此可见,进销存管理决策的正确与否直接影响了企业
9、的经济效益。本系统尽量采用公司现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用公司现有资源,提高系统开发水平和应用效果的目的。本系统的开发主要是为了实现企业进销存管理的系统化、规范化和自动化。这是在用户要求的基础上提出来的。 “采购管理”模块,该功能模块是企业经营过程中,如果库存中商品存货数量供应不足,则当班仓管员要根据所缺商品的类别向对应的供应商发出进货请求。“销售管理”模块,功能模块是企业商品向外销售过程中所要进行的一系列工作。“库存管理”模块,该功能模块是企业对仓库中各类商品的盘点、报损报溢以及各类商品的库存量盘点等等。 “系统管理”模块,该功能模块是对进销存管理系统的一系列参
10、数、权限、在系统发生故障时对系统中数据的备份、恢复以及记录日志文件等。进销存管理系统是介于用户和企业管理之间的一个系统,其功能模块如图1.1所示:图1.1 系统功能模块图6功能描述1.输入功能客户输入要进入的系统(如销售计价系统),通过用户名和密码认证,进入相应系统,执行相关操作。2.输出功能根据客户输入进入相应系统,对相关操作执行后输出结果。3.查询功能能根据用户需要查询相关信息,并以列表的形式呈现出来。4.更新功能在用户有网络介入的情况下,不需用户动手,能进行自动更新信息与功能,带给用户最为直观,最清晰,最新的动态信息与资料,并实现更多功能。5.生成报表功能能根据需要,自动生成报表,可选形
11、式为:销售情况报表,仓库备货表表,管理报表等。6.身份验证功能为确保信息安全性,对登入的用户尽心个身份验证,只有通过者才能进入相应系统。7.待开发软件的功能本软件旨在为销售人员与管理人员提供一个更好更稳定,功能齐全,使用方便的的系统软件,以代替传统软件,本产品具有其他产品不具备的诸多有点,有广阔的市场前景。 商品仓库管理:记录进、出货物的种类数量以及库存数量。商品销售管理:能拥有商品的销售、计费操作。 客户服务需求受理管理:接受客户的意见与建议及记录所需服务客户的资料。商品报价管理:能及时公布各种商品的最新价格动态。如图所示:8数据安全性和完整性要求(1)安全性要求本数据库有四类人员使用,包括
12、仓库管理员、销售管理员、普通管理员、系统管理员。系统管理员是数据库系统的主要管理者,对数据库的所有数据应有访问和修改的权力。负责进货、商品录入、商品更新以及退货、销售商品。普通管理员也是数据库系统的管理者,对数据库的部分数据有访问和修改的权力。对商品的查看及销售要求进行操作,同时形成进货或退货报表给主管人员查看确认。销售管理员是销售商品时对商品进行统计管理,不需要登陆即可进入系统,可以对其销售的产品进行管理与修改。(2)完整性要求 库存数与销售商品的数目应及时核对;退货时间不得超过7天;商品在出售记录中、商品不得有损坏、退货不得超期;购买与退货时,商品要经管理员确认;9.使用环境(1)硬件环境
13、 建议使用windows 2000/ xp/7以上的pc机,内存需在16兆以上。(2)软件环境中文:windows 2000/ xp/7英文:windows 2000/ xp/7第二章 概念结构设计1 分E-R图 (1)库存与进货的分E-R图(2)库存与销售的分E-R图(3)退货与销售的分E-R图(4)库存与退货的分E-R图2基本E-R图 第三章 逻辑结构设计关系模型的逻辑结构是一组关系模式的集合。E-R图则是由实体,实体的属性和实体间的联系三个要素组成。所以将E-R图转换为关系模型实际上就是要将实体,实体的属性和实体间的联系转换为关系模式。转换原则如下:1实体类型的转换:将每个实体类型转换成
14、一个关系模式,实体的属性就是关系模式的属性,实体的码就是关系的码。2联系类型的转换,根据不同的情况做不同的处理。(1) 若实体间的联系是1:1的,可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。(2) 若实体间的联系1:N的,可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本
15、身的属性均转换为关系的属性,而关系的码为N端实体的码。如果与N端对应的关系模式合并,则将一方的码传到多方去做为多方的一个非主属性。(3) 若实体间的联系是M:N的,可转换为一个独立的关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。(4) 三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。3依照该规则将进销存管理系统的E-R图转换为关系模型如下:(1) 将每一个实体转换成一个关系模式(实体的属性就是关系的属性,实体的码就是关系的码)。商品(商品
16、单号,商品名称,商品规格,商品类别,商品产地,进货价,稍售价,最低售价),主码为商品单号。仓管员(仓管员编号,仓管员名称,仓管员电话,仓管员地址),主码为仓管员编号。 2) 实体间的联系转化为以下几种:管理(仓管员编号,仓库编号,开始时间,终止时间)在此关系中主码为仓管员编号和仓库编号,因为在此关系中仓库与仓管员之间是多对多的联系,因此将仓管员编号和仓库编号联合作为管理联系的主码,管理联系本身的属性作为关系的属性。库存表,产品代码,进货量,产品名称)进货表(进货单号,产品代码,进货量,进货时间,产品名称)销售表(销售单号,产品代码,产品名称,订货数量,销售日期)在此关系中主码为销售单号、产品代
17、码,因为在此关系中商品、客户与业务员之间是多对多的多元联系,因此将销售单号、销售代码联合作为销售联系的主码,销售联系本身的属性作为关系的属性。销售表(退货单号,产品代码,产品名称,订货数量,退货日期)注:由E-R图可知,进销存管理系统有六个实体和四个联系) 第四章 数据库的物理结构1.数据库文件这里选择ORACLE 操作应用软件作为数据库平台,根据根据各个关系的数据量进行估算,设计数据库的定义如下表所示;文件文件名称初始大小增长大小最大文件大小数据库Xsgl_data.mdf50010不受限制日志Xsgl _log.ldf4005不受限制 实验系统平台:Windows Server 2000数
18、据库系统版本:Oracle Database 10 Oracle的安装路径:D盘 创建的数据库名称:xsgl 、打开命令行工具,创建必要有相关目录 C:mkdir D:oracleproduct10.1.0admin xsglC:mkdir D:oracleproduct10.1.0adminxsglbdump C:mkdir D:oracleproduct10.1.0adminxsgludump C:mkdir D:oracleproduct10.1.0adminxsglcdump C:mkdir D:oracleproduct10.1.0adminxsglpfile C:mkdir D:o
19、racleproduct10.1.0adminxsglcreate C:mkdir D:oracleproduct10.1.0oradataxsgl 上面创建目录的过程也可以在Windows的图形界面中去创建。其中D:oracleproduct10.1.0adminxsgl目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。最重要的两上子目录是bdump和udump目录,bdump目录存放的是数据库动行过程中的各个后台进程的跟踪信息,当中alert文件是警告文件,其文件名称为alert_xsgl.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,手工创建过程中出现的各种问题往
20、往也可以通过查看这个文件找到原因。Udump目录存放和特定会话相关的跟踪信息。D:oracleproduct10.1.0oradataxsgl目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件。 1. 创建初始化参数文件1.1 数据结构及代码实现1、Stock(库存表):记录当前库存的产品数量信息,便于查看当前库存的情况,及时组织货源。表名Stock实体名称库存表主键Icode外键、关系索引表名称PK_Stock索引字段名称Icode中文表名库存表估计数据量(MB/月)序号项目名称项目说明类型位数属性备注1Icode产品代码文本20P、N2Idescrip产品名称文本50允许空3Pq
21、ty数量数字4允许空Create table stock(icode char(20) not null primary key,Idescrip char(50) null,Pqty number(4)null);2、Input(进货表):录入进货单信息,向仓库入库提供单据依据,同时可以进行查询和统计进库的产品情况。表名Input实体名称进货表主键IID、Icode外键、关系索引表名称PK_ Input索引字段名称IID、Icode中文表名进货表估计数据量(MB/月)序号项目名称项目说明类型位数属性备注1IID进货单号文本20P、N2Icode产品代码文本20P、N3Idescrip产品名称
22、文本50允许空4Pqty数量数字4允许空6IDate进货日期日期8允许空Create table input (iid char(20) not null,primary key(iid,icode),Icode char(20) not null,Idescrip char(50) null,Paty number(4) null,Idate date null); 1 Create table input 2 (iid char(20) not null primary key, 3 Icode char(20) not null, 4 Idescrip char(50) null, 5
23、Paty number null, 6 Idate date null 7* )SQL /表已创建。Alter table input Add(constraint “pk_input” primary key(iid,icode); 1 Create table input 2 (iid char(20) not null,primary key(iid,icode), 3 icode char(20) not null, 4 idescrip char(50) null, 5 paty number(4) null, 6 idate date null 7* )SQL /3、Sales(销
24、售表):录入销售单信息,向客户提供送货及收款依据,同时可以进行查询和统计出库的产品情况。表名Sales实体名称出货表主键SID、Icode索引表名称PK_ Sales索引字段名称SID、Icode中文表名出货表估计数据量(MB/月)序号项目名称项目说明类型位数属性备注1SID销售单号文本20P、N2Icode产品代码文本20P、N3Idescrip产品名称文本50允许空4Pqty数量数字4允许空5SDate销售日期日期8允许空Create table sales(sid char(20) not null,primary key(sid,icode),Icode char(20) not nu
25、ll,Idescrip char(50) null,Paty number(4) null,Idate date null); 1 Create table sales 2 (sid char(20) not null,primary key(sid,icode), 3 Icode char(20) not null, 4 Idescrip char(50) null, 5 Paty number(4) null, 6 sdate date null 7* )SQL /表已创建。4、Returns(退货表):录入客户退货信息,同时处理当前库存的存货数量。 表名Returns实体名称出货单表主键
26、RID、Icode索引表名称PK_ Returns索引字段名称RID、Icode中文表名退货表估计数据量(MB/月)序号项目名称项目说明类型位数属性备注1RID退货单号文本20P、N2Icode产品代码文本20P、N3Idescrip产品名称文本50允许空4Pqty数量数字4允许空5RDate退货日期日期8允许空Create table returns(rid char(20) not null,primary key(rid,icode),Icode char(20) not null,Idescrip char(50) null,Paty number(4) null,rdate date
27、 null);SQL Create table returns 2 (rid char(20) not null,primary key(rid,icode), 3 Icode char(20) not null, 4 Idescrip char(50) null, 5 Paty number(4) null, 6 rdate date null 7 );表已创建。仓管员信息结构数据项名说明类型宽度小数逻辑关系仓管员编号Admin_noChar8主键,决定仓管员信息的其它数据项仓管员姓名Admin_nameChar8依赖于仓管员编号仓管员电话Admin_phoneChar11依赖于仓管员编号仓
28、管员地址Admin_addressChar20依赖于仓管员编号1.2 功能代码实现1、 在数据库中创建一个用户,用户名为:班级号_Test_座位号,如班级为E20,则用户名分别为E20_Test_01E20_Test_30,密码为oracle,并给予该用户帐号适当的权限。(5.sql)SQL conn / as sysdba已连接。(1)创建xg102_test_01用户为管理员创建用户create user xg102_test_01identified by oracleprofile default;授权grant connect to xg102_test_01;grant resource to xg102_test_01;grant create any table to xg102_test_01;grant create any index to xg102_test_01;grant alter any index to xg102_test_01;grant alter any table to xg102_test_01;grant drop any table to xg102_test_01;grant create tablespace to xg102_test_01;grant alter tablespace to xg102_t
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1