版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 系统需求分析31.1 系统的背景介绍31.2 系统的可行性研究31.2.1数据库设计方法简述31.2.2操作可行性41.2.3技术可行性51.2.4经济可行性分析51.2.5综合评价61.3系统业务流程的调查和分析61.3.1系统业务流程分析7图1-1 快递管理业务流程图7图1-2 快递管理业务流程简图81.3.2 系统规划81.4 系统数据流程的调查和分析9图1-3 快递管理数据流程图91.5 数据库设计101.5.1 概念结构设计101.5.2逻辑结构设计111.5.3物理结构设计111.6 数据字典15第二章 系统设计182.1 功能结构图182.2 代码设计192.3 输入输出
2、设计202.3.1、输入设计202.3.2、输出设计21第三章 系统实现223.1登录模块设计223.1.1设计步骤223.1.2程序代码设计223.2主界面设计233.3数据模块设计233.4信息录入模块设计233.5信息统计模块设计253.6信息查询模块设计303.6.1快件接收查询303.6.2快件派送查询313.6.3未派送快件查询323.7报表设计33第四章 心得体会34第一章 系统需求分析1.1 系统的背景介绍 A、B、C、D家物流公司拟共同出资在大学城建立一个快递集散中心,解决大学城交通不方便,但是快递需求大的问题。公司在大学城建立一个仓库用于中转和暂存,仓库流转率较高。仓库接收
3、各物流公司送过来的快件并通过条形码、RFID等信息化设备完成入库,同时可根据大学城单位或社区为目的地进行分类存储,方便安排送货。仓库存储时间不能超72小时。仓库暂存客户送来的快件,并按客户选择的物流公司存储。存储时间不能超过48小时。为保证配送准确性减少配送引起的纠纷。要求仓库按先进先出原则进行配送。入库出库数据必须定期审核备查。对车辆配载情况,使用情况等进行跟踪。人员、物件、车辆信息必须进入数据库统一管理,并可根据股东要求报送相关报表。为了完成上述快递集散中心的运行,现设计大学城快递集散中心物流信息管理系统,方便日常事物的开展。1.2 系统的可行性研究1.2.1数据库设计方法简述数据库设计是
4、为了有效地存储数据及信息的查询更新删除等管理操作而设计的数据环境。 1.需求分析阶段准确了解与分析用户需求如数据、处理。建立一个检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低的物流管理信息系统 减轻工作人员的负担。2.概念结构设计阶段 通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。3.逻辑结构设计阶段将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。4.数据库物理设计阶段为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。5.数据库实施阶段运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果。建
5、立数据库,编制与调试应用程序,组织数据入库,并进行试运行。6.数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。1.2.2操作可行性 作为一个实际存在的业务,系统设计的目的,以及所包括的信息内容功能都能够比较清晰地获得。通过合理的系统分析,能够基本上获得系统的需求,并且按照系统的需求进行之际的系统设计工作。1.2.3技术可行性1系统描述 本系统是以计算机软件技术为基础,利用VisualFoxpro编程技术进行编程设计的软件系统。2系统功能 本系统具有输入、输出、查找、配送等功能,完成信息的显示。3系统用户及其特点 本系统的
6、使用对象是企业的管理人员和库存工作人员,只要懂得计算机的基本操作就能够使用本系统。4系统运行环境 Windows2000以上操作系统,VF软件系统,需要懂一定编程知识人员。5技术可行性分析 本企业拥有足够量的必须计算机软硬件,并且拥有熟悉计算机技术员工,因此本企业具备本系统的运行条件。1.2.4经济可行性分析1费用估计 (1)计算机若干台以及必要支持软件 (2)系统的开发费用及安装费用 (3)人员培训费用 (4)系统日常运行耗费2效益估计 (1)直接效益 本系统的应用可以减少信息处理的成本,提高企业运营效率,降低运营成本。 (2)间接效应 本系统的应用可以改善信息获得性,提高执行者的办事效率。
7、1.2.5综合评价 本系统的特点是成本较低,给企业所带来的效益要高于系统应用的费用,因此,本系统在经济上是可行的。1.3系统业务流程的调查和分析本系统服务于快递公司的业务。处理单据,数据统计,报表打印,单据查询以及数据库维护等系统功能有:1 数据的添加、删除和修改2 派送单查询、接收单查询、投诉单查询以及未派送的快件查询等查询功能。3 对某一段时间内的数据进行统计4 打印详细报表5 基本资料维护及用户权限等6 数据库的备份与还原1.3.1系统业务流程分析图1-1 快递管理业务流程图图1-2 快递管理业务流程简图1.3.2 系统规划系统处理范围 单据处理、数据统计、 单据查询、报表
8、打印、数据库维护、权限管理系统功能1)数据的录入(添加、删除和修改)2)派送单、接收单、投诉单等的查询3)某一段时间内的数据进行统计4)打印详细报表5)基本资料的维护6)数据库的备份与还原7)权限管理 1.4 系统数据流程的调查和分析图1-3 快递管理数据流程图1.5 数据库设计1.5.1 概念结构设计(1)数据库表图4-1数据库表(2) E-R图1.5.2逻辑结构设计收件单(接收单号,发站,运输方式,快递员号)派送单(派送单号,接收单号,发站,运输方式,快递员号,)中转单 (中转单号,发站,运输方式,快递员号)投诉单(投诉单号,派送单号,接收单号,货物编号,原因)快递员(编号,
9、姓名,手机,住址,宅电)品名维护(编号,品名,备注)备注维护(编号,备注)1.5.3物理结构设计(1)创建数据库 使用vf创建数据库“KD”再在数据库KD中新建9张数据表。综合快递物流信息系统表汇总序号表名称功能描述1fj_lr派送单记录表2js_lr接收单记录表3ts_lr投诉单记录表4zz_lr中转记录表5Sender品名信息表6 User1用户信息表7 Memo备注信息表8Kuaidiyuan快递员信息表9权限管理权限管理表(2)设计数据表 表名:fj_lr 派送单记录表字段名代表意义数据类型是否允许空值主键fj_id派送单编号Varchar(15)否Keystation发站名称nvar
10、char(10)否 send_mode运输方式nvarchar(10)否name品名nvarchar(10)否weight重量Numeric(9)否sender送货人nvarchar(10)rece_person收货人nvarchar(10)否rece_addr收货人地址nvarchar(60)否rece_tel收货人电话nvarchar(20)否thing备注nvarchar(60)fjfee派送费Float(8)否ps_data派送日期Datatime否Js_id接收单号Varchar(15)否id快递员idVarchar(15)否表名:js_lr 接收单记录表字段名代表意义数据类型是否允
11、许空值主键js_id接收单号Varchar(15)否Keystation发站名称nvarchar(10)send_mode运输方式nvarchar(10)否name品名nvarchar(10)否weight重量Numeric(9)否sender送货人nvarchar(10)rece_person收货人nvarchar(10)否rece_addr收货人地址nvarchar(60)否rece_tel收货人电话nvarchar(20)否Memo1备注nvarchar(60)fjfee派送费Float(8)否js_data接收日期Datatime(8)否id快递员idVarchar(15)否表名:ts
12、_lr 投诉单记录表 字段名代表意义数据类型是否允许空值主键Ts_id投诉单编号Varchar(15)否Keyfj_id派送单编号Varchar(15)js_id接收单号Varchar(15)customer客户名nvarchar(20)customer_addr客户地址nvarchar(40)customer_tel客户电话nvarchar(20)Memo1备注原因nvarchar(40)否Ts_date投诉日期Datatime(8)否表名:Sender品名信息表字段名代表意义数据类型是否允许空值主键Id编号Char(10)否Keymane品名Char(20)否表名:Memo 备注信息表字段
13、名代表意义数据类型是否允许空值主键id编号Nvarchar(4)否Keymemo备注Nvarchar(50)表名: zz_lr 中转记录表字段名代表意义数据类型是否允许空值主键zz_id接收单号Varchar(15)否KeyStart_station发站名称nvarchar(10)end_station终站名称nvarchar(10)send_mode运输方式nvarchar(10)否name品名nvarchar(10)否weight重量Numeric(9)否rece_person收货人nvarchar(10)否rece_addr收货人地址nvarchar(60)否rece_tel收货人电话n
14、varchar(20)否Memo1备注nvarchar(60)zz_data接收日期Datatime(8)否表名:User1用户信息表字段名代表意义数据类型是否允许空值主键id编号Nvarchar(4)否Keymane姓名Nvarchar(10)password 密码Nvarchar(10)表名:Kuaidiyuan快递员信息表字段名代表意义数据类型是否允许空值主键id编号Nvarchar(15)否Keymane姓名Nvarchar(10)否Tel手机Varchar(20)否Addr住址Nvarchar(40)Phone宅电Varchar(20)1.6 数据字典数据字典的组成 数据字典有6类条
15、目:数据项、数据结构、数据流、数据处理、数据存储和外部实体。(1)数据项是数据的最小单位,是不可再分的数据单位。如学号,姓名等。对数据项的描述一般包括:数据项的编号、名称、别名和简述,数据项的类型、长度和取值范围等。表一:数据项描述派送单编号数据项编号I01-01数据项名称fj_id别名派送单编号简述用于记录派送单的代码类型及宽度Varchar(15)取值范围000000000000000999999999999999相关数据结构派送单记录表、投诉单记录表表二:数据项描述运输方式数据项编号I01-02数据项名称send_mode别名运输方式简述用于描述采用何种运输方式类型及宽度nvarchar
16、(10)相关数据结构派送单记录表、接受单记录表、中专记录表(2)数据结构数据结构描述了数据项之间的关系,由数据项或者数据结构组成。一个简单的数据结构由数据项组成,而复杂的数据结构则包含了其他数据结构对数据结构的描述包括:数据结构的编号、名称、简述、数据结构的组成等。表三:数据结构描述品名信息数据结构编号DS02-01数据结构名称品名信息简述用于描述货物信息组成编号、品名相关数据流派送单、接收单、中转单相关数据处理录入、修改及删除出处理表四:数据结构描述快递员信息数据结构编号DS02-02数据结构名称快递员信息简述用于描述快递员的信息组成编号、姓名、手机、住址、宅电相关数据流派送单、接收单、中转
17、单相关数据处理录入修改及删除处理表五:数据结构描述用户信息数据结构编号DS02-03数据结构名称用户信息简述用于描述此软件的用户的信息组成编号、姓名、密码相关数据流派送单、接收单、中转单相关数据处理录入、修改及删除处理表六:数据结构描述备注信息数据结构编号DS02-04数据结构名称备注信息简述用于描述备注组成编号、备注相关数据流派送单、接收单、中转单、投诉单相关数据处理录入、删除及修改处理(3)数据流数据流用来描述数据的流动过程,由一个或一组固定的数据项组成。可以是一个已定义的数据结构,也可以由若干数据项组成。表七:数据流描述派送单数据流编号F03-01数据流名称派送单简述快递公司根据接收单开
18、出此单,根据此单进行派送数据流来源首发站数据流去向快件派送及中转管理模块数据流组成派送单编号、发站名称、运输方式、品名、重量、送货人、收货人、收货人地址、收货人电话、备注、派送费、派送日期、接收单号、快递员id表八:数据流描述接收单数据流编号F03-02数据流名称接收单简述接收物品后的登记单据数据流来源快件接收登记数据流去向快件接收管理模块数据流组成接收单编号、发站名称、运输方式、品名、重量、送货人、收货人、收货人地址、收货人电话、备注、派送费、接收日期、快递员id表九:数据流描述投诉单数据流编号F03-03数据流名称投诉单简述用于登记用户的投诉情况数据流来源发件人数据流去向客户投诉管理数据流
19、组成投诉单编号、派送单编号、接收单号、客户名、客户电话、客户地址、投诉原因、投诉日期表十:数据流描述中转单数据流编号F03-04数据流名称中转单简述用于登记快件的中转记录数据流来源快递中转站数据流去向快件派送管理模块数据流组成接收单号、发站名称、终站名称、运输方式、品名、重量、收货人、收货人地址、收货人电话、备注、接受日期第二章 系统设计2.1 功能结构图图2-1系统功能结构图2.2 代码设计接收单号代码表接收单号201401010012014年1月1号接收的第1个单子201401010022014年1月1号接收的第2个单子201401010032014年1月1号接收的第3个单子派送单号代码表
20、 派送单号201401010012014年1月1号派送的第1个单子201401010022014年1月1号派送的第2个单子201401010032014年1月1号派送的第3个单子投诉备注代码表类型号1运输途中丢失,运输公司负责赔偿2不全3破损4丢了5包装导致物品破损,由快递公司负责赔偿6没有货物代码表种类号001书籍002箱包003衣物004日用品005灯具006食品007电器008饮料009其他2.3 输入输出设计2.3.1、输入设计(1)输入设计的任务根据具体业务要求,确定适当的输入形式,使信息系统获取管理工作中产生的正确信息。(2)输入设计的内容1输入界面设计。根据具体业务要求确定(详见
21、主界面设计和各模块设计)。2.输入设备选择:键盘-磁盘输入装置。数据录入员通过工作站录入,经拼写检查和可靠性验证后存入磁记录介质 。图2-2 信息录入界面2.3.2、输出设计(1)输出设计的内容1.输出信息使用情况。信息的使用者、业务统计、业务查询、信息量等。2.输出信息内容。派送单据、业务单据、统计业务量等。3.输出格式。如表格、报告等。4.输出设备和介质,设备:如打印机、显示器等;介质:如磁盘、磁带、纸张等。图2-3信息查询输出图第三章 系统实现3.1登录模块设计 启动程序,首先进入登录模块,该模块用来确认用户身份,保证数据的安全性。在该模块中使用了TDBLookupListBox组件,该
22、组件能将被查找字段的值自动添加到它的列表中,用户可以在该组件中选取用户名进行登录。3.1.1设计步骤1)新建窗体,设置BorderStyle属性(边框类型)为“bsNone”,在窗体上放置一个TImage组件,设置其Stretch属性为“true”图片放大或缩小以TImage组件边框为准,pictures属性选择图片(背景图片)。2)在TImage组件上放置一个TDBLookupListBox组件,设置Ctl3D属性为“False”;设置ListSourse属性为“dm.dsuser1table”;设置KeyField属性为“name”;设置ListField属性为“name”。在窗体上添加一
23、个TEdit组件,设置Ctl3D属性为“False”;设置passwordChar属性为“*”。3)在TImage组件上放置两个TBitBtn组件,为了按钮的美观,设置其Glyph属性加载按钮图片。3.1.2程序代码设计主要的代码在单击【登录】按钮和【取消】按钮。单击【登录】按钮,系统在数据库中查找与用户输入的“用户名”和“密码”相符的记录。如果有,则用户可以登录,如果没有且输入3次都不正确,系统将自动退出。单击【取消】按钮,退出系统。(代码详见附录)3.2主界面设计主窗体设计在系统中占据很重要的地位,因为只有界面友好、操作方便的软件才能被用户所接受。本系统使用TSpeedButton组件作为
24、工具栏按钮,使用TTreeView组件作为功能目录树,使用TStatusBar组件显示当前系统状态信息。3.3数据模块设计数据模块是将连接和处理数据的数据库组件统一规范管理的模块,在设计期间数据模块是以窗口的形式显示在界面中的。但是不可以向数据模块中加入可视化组件,因为该模块不会在系统运行时显示出来。使用数据模块进行数据库设计与数据处理有以下优点:1便于数据库的移植 2增加了程序的清晰性 3可以最大程度的实现代码重用总之,可以将数据集全部放在数据模块中,这样可以方便地设置数据关联等,而且数据处理起来也相对方便,因为不需要在工程文件中去寻找对应的数据集。 3.4信息录入模
25、块设计信息录入模块包括快件接收录入、快件派送录入、快件中转录入和客户投诉录入等板。图3-8 快件派送录入界面图3-9 快件接收录入图3-10 快件中转录入图3-11客户投诉录入3.5信息统计模块设计信息统计模块包括快件接收统计、快件派送统计、快件中转统计、客户投诉统计和大客户运量统计等板块。其中未派送统计是多表联系查询统计。派送统计:主要负责功能是统计在某一段时间内的派送的物品的重量和派送费用并且有相应的打印模块可以打印报表。相应的主要代码:procedure Ttj_paisong.BitBtn1Click(Sender: TObject);begin if self.DateTimePic
26、ker1.Date>self.DateTimePicker2.Date then begin messagebox(self.Handle,'起始日期不能大于终止日期','提示信息',mb_iconinformation); Exit; end; dm.search1.Close; dm.search1.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker1.Date ); dm.search1.Param
27、eters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker2.Date ); dm.search1.Open ; dm.search0.Close; dm.search0.CommandText:='select sum(weight) ''总重量'',sum(fjfee) ''派送费合计'' from fj_lr where ps_date >=cast(:date1 as dat
28、etime)'+ ' and ps_date<=cast(:date2 as datetime)' ; dm.search0.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker1.Date ); dm.search0.Parameters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePic
29、ker2.Date ); dbedit1.DataSource:=dm.dssearch0 ; dbedit1.DataField:='总重量' dbedit2.DataSource:=dm.dssearch0 ; dbedit2.DataField:='派送费合计'end;图3-12派送统计界面接受统计:主要负责对一段时间内的收件进行显示和重量计算。图3-13 接收统计界面 未派送统计:具有相当重要的意义,因为快件派送统计、快件中转统计、客户投诉统计和大客户运量统计等,只是用来当做月末或季度末的结算功能使用;而未派送统计则是对工作有较大的意义,可以查到一段时间
30、之内,还未派送的快件,便可以查看这些快件有无缺失或者根据时间安排相应的派送顺序。具体实现为:DBGrid连接到dm:data dmunit中的TDataSourceàTADODataSetàTADOConnection (与相应数据库连接)。 相应的SQL语句为:select js_id 票据号', send_station 发站', send_mode 运输方式', name 品名',weight 重量',rece_person 收货人', js_date 收件日期' from js_lr where js_date
31、>=cast(:date1 as datetime) and js_date<=cast(:date2 as datetime)and js_id not in(select js_id from fj_lr where fj_lr.js_id=js_lr.js_id)图3-14 未派送统计界面 大客户运量统计:主要用于对大型客户设计的信息统计。只要输入相应的客户名,便可以对相应时间段内或者该客户所有订单进行查询。是专门为有大量业务的会员量身定做的。 相应的主要代码: dm.search4.Close; dm.search4.CommandText:='select fj_
32、id ''派送单号'' ,station ''发站'', name ''品名'', weight ''重量'', fjfee ''派送费'','+ ' rece_person ''客户名称'', ps_date ''发件日期'' from fj_lr ' + ' where rece_person like+''%'&
33、#39;+'''+str+'''+''%'' and ps_date>=cast(:date1 as datetime) '+ ' and ps_date<=cast(:date2 as datetime)' dm.search0.Parameters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.datetimepicker2.Date ); dm.search0.Ope
34、n ; dbedit1.DataSource:=dm.dssearch0 ; dbedit1.DataField:='总重量' dbedit2.DataSource:=dm.dssearch0; dbedit2.DataField:='派送费合计' end;end;图3-15 大客户运量统计界面统计打印报表设计:提取相应的界面上和数据库中的数据,制成一张打印报表,供发放给其他操作员,例如快递员或业务经理等。主要实现:调用相应的打印报表界面。在打印报表界面中实现,具体见报表实现部分。主要代码:procedure Ttj_customer.BitBtn2Click(
35、Sender: TObject);begin try if (dm.search4.Active=false) then exit; rpt_tj.QuickRep4.BringToFront ; rpt_tj.QuickRep4.preview; except Application.MessageBox('错误。','提示!',mb_ok); end;end;3.6信息查询模块设计信息查询模块包括快件接收查询、快件派送查询、快件中转查询、客户投诉查询和未派送快件查询等板块。其中快件接收查询、快件派送查询、快件中转查询和客户投诉查询是简单的单表查询;未派送快件
36、查询是多表查询。下面主要从快件接收查询、快件派送查询和未派送快件查询为例子来介绍本文的信息查询模块设计。3.6.1快件接收查询 select js_id 接收单号',js_id 票据号',station 发站',send_mode 运输方式',name 品名',weight 重量',rece_person 收货人' ,fjfee 派送费',ps_date 派送日期'from js_lr where ps_date>=cast(:date1 as datetime) and ps_date<=cast(:date
37、2 as datetime)图3-17快件接收查询3.6.2快件派送查询 select fj_id 派送单号',js_id 票据号',station 发站',send_mode 运输方式',name 品名',weight 重量',rece_person 收货人' ,fjfee 派送费',ps_date 派送日期'from fj_lr where ps_date>=cast(:date1 as datetime) and ps_date<=cast(:date2 as datetime)图3-19快件派送查询3.
38、6.3未派送快件查询select js_id 票据号', send_station 发站', send_mode 运输方式', name 品名',weight 重量',rece_person 收货人', js_date 收件日期' from js_lrwhere js_date>=cast(:date1 as datetime) and js_date<=cast(:date2 as datetime) and js_id not in(select js_id from fj_lr where fj_lr.js_id=js_lr.js_id)图3-20未派送快件查询 messagebox(self.Handle,'起始日期不能大于终止日期','提示信息',mb_iconinformation);exit; end; dm.search6.Close;dm.search6.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker1.Dat
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025~2026学年河北省部分学校高三下学期第二次模拟考试生物试卷
- 2026 山东 退役军人岗事业单位高频强化训练卷
- (2026年)门诊预约诊疗工作制度
- 2026年ICU 血标本采集护理试卷及答案
- 2026年ICU 输液泵使用护理试卷及答案
- 2026年ICU 静脉炎识别与护理试卷及答案
- 2026年ICU 高危急救药品使用护理试卷及答案
- 2026年gmp初级内审员试题及答案
- 初中政治法律串讲课件
- 挫折做教学课件
- 2027北京协和医院应届毕业生招聘(护理类)考试参考题库及答案解析
- 长征胜利 90 周年 长征精神与新时代青年责任担当课件
- 2026中国内河码头建设政策环境与区域发展机遇研究报告
- 2026 版特殊作业监护人员安全手册
- 麻醉科麻醉复苏查房课件
- 2026年西藏自治区中考化学试题(含解析)
- 2026年江西高中水平测试题语文
- 手术室护理实践指南2025版
- 2026年广东省行政执法专业科目考试真题分析与备考指南
- 2026-2030中国orc低温余热发电系统行业供需形势与营销策略研究报告
- 独立生活能力培养小学主题班会课件
评论
0/150
提交评论