快递管理系统接货管理实验报告.docx

上传人:b****6 文档编号:6463965 上传时间:2023-01-06 格式:DOCX 页数:23 大小:326.78KB
下载 相关 举报
快递管理系统接货管理实验报告.docx_第1页
第1页 / 共23页
快递管理系统接货管理实验报告.docx_第2页
第2页 / 共23页
快递管理系统接货管理实验报告.docx_第3页
第3页 / 共23页
快递管理系统接货管理实验报告.docx_第4页
第4页 / 共23页
快递管理系统接货管理实验报告.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

快递管理系统接货管理实验报告.docx

《快递管理系统接货管理实验报告.docx》由会员分享,可在线阅读,更多相关《快递管理系统接货管理实验报告.docx(23页珍藏版)》请在冰豆网上搜索。

快递管理系统接货管理实验报告.docx

快递管理系统接货管理实验报告

1.4.2SQLServer概述-5-

引言

近几年来,随着社会科技,文化和科技的发展,特别是计算机网络技术和通信技术的发展,人们对信息的意识,对开发和使用信息资源的重视越来越加强烈。

而随着Internet和相关技术日异月新的发展,web应用已经成为目前企业应用最为广泛的一种形式。

与此同时,作为计算机发展最迅速的又一领域--数据库技术,也已自身形成了一套独有的理论,广泛地应用于人们的生产和生活之中。

数据库技术与网站的结合是当今Web技术的一个热点。

有了数据库的支持,可以扩展网页的功能,可以方便的设计出交互页面,可以构造功能强大的后台管理系统,可以为网站的更新、维护提供极大的方便。

因此,作为网络开发者或管理者,数据库知识是必不可少的。

快递服务企业,通常处于和快递业务网络最终服务商之间,是扩地去、扩行业的运作系统,提供面向终端客户的快递服务业务。

标准化程度的高低不仅关系到各种快递功能,要素之间能否有效衔接和协调发展,也在很大程度上影响着全社会快递效率的提高。

但是,其业务信息及其繁杂,如果没有一套逻辑严密的管理系统,不仅浪费人力,同时对客户服务质量的提高、以及业务的拓展、审核诸方面都将不利。

在考察了快递的日常业务以及参考了其他快递业务系统后,快递管理系统中存在的主要问题体现在以下几个方面:

快递公司不能全面、清晰的确认货运单的类型、货运单的日期、货运单的修改及删除等。

不能准确、清晰的确认货运单是否已经作废。

货运回执单是否已经填写。

而这些问题均与货运管理相连,所以综合系统要求,在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,为企业提供精确、精细、迅速的各种信息。

通过接货管理系统,可以有效地执行货运单的增加/填写、修改、删除、查询等功能,达到资源的合理利用。

本模块是在.net平台上运用ASP.NET技术来实现的。

其主要功能由层调用SQLServer2005的存储过程进行数据处理。

主要功能是对货运单进行增加、查询、编辑、修改与删除的查询。

其中货运单的填写就是对货运单的增加;货运单的查询就是对货运的类型及收发客户和货运状态进行查询。

本文分为三章来介绍快递管理系统的设计与实现。

第一张系统分析,在系统分析中主要是系统的需求分析、系统的功能分析、可行性分析、开发工具简介、架构简介等;第二章系统总体设计,提出系统功能模块的细分和数据库的详细设计等;第三章系统详细设计与实现,主要包括系统功能子模块的设计与实现、设计理念、实现功能和最终得到的结果等。

1系统分析

1.1需求分析

随着快递公司业务的发展,快递业务具有客户量大、分散、件数多、重量小、时效性强、市场竞争激烈等特点,业务量不断增多,跨区域工作的需求,客户需要一种能够运行于B/S模式的快递管理系统,如何设计快递管理系统已经成为快递公司非常关注的问题,因此开发一套好的快递管理软件,不但能大大降低工作人员的劳动强度,还能提高快递公司的管理水平。

1.2功能分析

接货管理的主要功能是填写一份货运单合同,该合同的内容包括货运单编号、发货客户信息、收货客户信息、运费、保险费等,提交合同后,同时修改该合同状态为待运,票据状态为已填。

填完货运单后,需要为本次货运添加货物。

在货物列表中,添加货物,主要填写货物的名称、重量、体积、货物价值等信息。

可以查看不同状态的货运单,比如待发运单、未到运单、未结运单。

填写完运单但还没有发货的运单为待发运单;运单已发但还未到,为未到运单;没有结算的运单统称为未结运单。

注:

货运单只有在待运状态时,才可以修改和删除,其他状态不能对其数据操作。

1.3可行性分析

1.3.1操作可行性

本系统性能稳定,简单易用易懂、功能完善、有利于公司管理人员的使用,大大提高管理的效率。

1.3.2经济可行性

本次系统的课设所用到的计算机和计算机上所安装时的软件来完成来完成这次的开发,无需经济上的投入,因此在经济上是可行的。

1.3.3技术可行

MicrosoftVisualStudio.NET2005采用了可视化面向工具开发,其窗口、界面简洁易懂,易于操作。

MicrosoftSQLServer2005具有上手容易、可兼容性好、扩展性强并且易于操作等诸多优点。

所以系统在操作上是可行的。

1.4开发工具简介

VisualStudio.NET是.NET平台下最为强大的开发工具,无论是软件服务商,还是企业应用程序的部署与发布,VisualStudio.NET提供了包括设计、编码、编译调试、数据库连接操作等基本功能和基于开放架构的服务器组件开发平台、企业开发工具和应用程序重新发布以及性能评测报告等高级功能。

1.4.1C#概述

1、c#是一种最新的、面向对象的编程语言。

C#使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序,Microsoft.NET提供了一系列的工具和服务来最大程度地开发利用计算机与通讯领域。

并以安全、稳定、简单、优雅等特点在计算机领域站稳头角。

并且,c#还在继承C和C++强大功能的同时去掉了一些复杂特性(例如没有宏和模版,不允许多重继承)。

秉承着简单的可视化操作和高运行的效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。

2、C#的特点

1.)C#本身不包含任何类库

2.)C#支持两种类型:

value类型和reference类型。

Value类型包括简单类型(如char,int和float)、enum类型和struct类型。

Reference类型包括class类型、interface类型、delegate类型和array类型。

3、数组

ClassText{

StaticvoidMain(){

inta1;//int类型的一维数组

int[,]a2;//int类型的二维数组

int[,,]a3;//int类型的三位数组

intj2;//不规则数组:

数组(int数组)

intj3;//数组(数组(int数组))}

}

显示了多个局部变量的声明,它们都是使用int数组类型作为元素类型。

数组是reference类型的,因此一个数组变量的声明仅仅留出了一个指向数据的地址空间。

数组例程实际上是通过数组初始化和数组创建表达式创建。

1、)类型系统统一TypesystemunificationC#提供了一个"统一类型"。

所有的类型-包括value类型等都是由object类型派生而来。

2、)变量赋值要求

在对一个变量的值进行运算之前,必须对该变量进行赋值。

3、)参数

正式的参数声明过程也可以定义变量。

有四种类型的参数:

value参数、reference参数、output参数和params参数。

(1).value参数为值传递

(2).Output参数类似于reference参数,只是调用提供的调用者参数的初始值不再重要。

Output参数的声明包括一个out修饰符。

(3).Params参数的声明包括params修饰符。

给定一个方法,只能有一个params参数,并且需要在最后指定该参数。

Parmas参数的类型是一位数组类型。

一个调用函数可以传递单个这种数组类型的变量,也可以传递多个这种变量。

4.)操作符

(1).除了赋值操作符外,所有二元操作符是左关联的,意味着操作符从右运算到左。

例如x=y=z运算成x=(y=z)。

5.)索引

应用索引可以是的一个对象可以类似数组的方式索引。

属性提供了类似于域的访问,而索引提供了类似于数组的访问。

6.)编译的具体步骤可能会因为不同的编译器或工具而有所不同。

4、C#的优点

1.)完全支持类和面向对象编程,包括接口和继承,虚函数和运算符重载的处理

2.)定义完整,一致的基本类型集

3.)对自动生成xml文档说明的内置支持

4.)可以用用户定义的特性来标记类或者方法,这可以用于文档说明,对编译有一定的影响

5.)C#可以用于编写的动态web页面和xmlweb服务

1.4.2SQLServer概述

1、SQLServer概述是一种数据库管理系统(DBMS),其数据模型是以关系型为主,辅助以一些面向对象模型。

2、SQLServer(以及类似Oracle之类的大型的DBSS)其应用主要有两种:

1.)OLTP(联机事物处理):

主要是对数据进行添加、修改、删除、查询操作。

传统的"进销存系统"、"信息管理系统"等均属于OLTP。

2.)OLAP(联机分析处理):

主要是基于海量数据的查询、分析。

数据仓库技术属于OLAP。

1.4构架简介

在所谓三层架构分为的三层:

变现层、数据存取层、业务逻辑层。

且这三层是通过实体层连接起来的。

表现层:

web界面,为用户提供信息,触发用户的指令和用户进行交互。

业务逻辑层:

调用数据存取层的方法,出路表现层触发的任务。

数据存取层:

和数据库打交道,把数据提取或保存到数据库。

实体层:

具体的集合,三层之间是通过实体层联系起来的。

 

2系统总体设计

2.1系统功能结构设计

1、接货管理模块功能描述:

接货管理的主要功能是填写一份货运单合同,该合同的内容包括货运单编号、发货客户信息、收货客户信息、运费、保险费等,提交合同后,同时修改该合同状态为待运,票据状态为已填。

填完货运单后,需要为本次货运添加货物。

在货物列表中,添加货物,主要填写货物的名称、重量、体积、货物价值等信息。

可以查看不同状态的货运单,比如待发运单、未到运单、未结运单。

填写完运单但还没有发货的运单为待发运单;运单已发但还未到,为未到运单;没有结算的运单统称为未结运单。

注:

货运单只有在待运状态时,才可以修改和删除,其他状态不能对其数据操作。

功能模块图如图2.1所示:

图2.1接货管理模块功能模块图

2.2数据库设计

2.2.1数据表设计

所做的模块主要涉及到货运单主表(Accept_CarryBillParent)、货运单事件表(Accept_CarryBillEvent)、货运单详表(Accept_CarryBillDetail)三个表,本模块应该能够将表中的信息显示出来,用户对相应信息进行查询,添加,删除,修改都涉及到这三个表,对应删除,修改,添加能改变表里面的信息,并将其存到数据库中。

1、货运主单表:

用于存放货运单的信息,包含货运单类型,货运单编号,发货客户信息,收货客户信息,交货地址等。

如表2.1所示。

表2.1货运单主表(Accept-CarryBillParent)

名称

字段

数据类型

是否主外键

是否允许空

PKID

PKID

int

主键

货运单编号

GoodsBillCode

varchar(50)

发货客户编号

SendGoodsCustomerNo

varchar(50)

发货客户

SendGoodsCustomer

varchar(50)

发货客户电话

SendGoodsCustomerTel

varchar(50)

发货客户地址

SendGoodsCustomerAddr

varchar(50)

收货客户编号

ReceiveGoodsCustomerCode

varchar(50)

收货客户

ReceiveGoodsCustomer

varchar(50)

收货客户电话

ReceiveGoodsCustomerTel

varchar(50)

收货客户地址

ReceiveGoodsCustomerAdr

varchar(50)

发货日期

SendGoodsDate

datetime

发货地址

SendGoodsAddr

varchar(50)

收货地址

ReceiveGoodsAddr

varchar(50)

预期交货日期

PredeleveryDate

datetime

实际交货日期

FactDealDate

datetime

代收货款

HelpAcceptPayment

money

代收手续费率

AcceptprocedrueRate

varchar(50)

付款方式

PayMode

varchar(50)

取货方式

FetchGoodsMode

varchar(50)

填票人

WriteBillPerson

varchar(50)

填写日期

WriteDate

datetime

有效性

Validity

varchar(50)

是否审核

IfAudit

varchar(50)

是否结帐

IfSettleAccounts

varchar(50)

中转地

TransferStation

varchar(50)

中转费

TransferFee

money

减款

ReduceFund

money

付回扣

PayKickback

money

代收货款变更后金额

MoneyOfChangePay

money

送货费

CarryGoodsFee

money

运费

Carriage

money

保险费

Insurance

money

职员PKID

EmployeePKID

int

备注

Remark

varchar(50)

接货点

AcceptStation

varchar(100)

发货客户手机

SendGoodsCustomerMobile

varchar(50)

收货客户手机

ReceiveGoodsCustomerMobile

varchar(50)

2、货运单事件表:

用于记录的相关信息。

如表2.2所示。

表2.2货运单事件表(Accept_CarryBillEvent)

名称

字段

数据类型

是否主外键

是否允许为空

PKID

PKID

int

主键

货运单PKID

GoodsBillPKID

int

外键(Accept_CarryBillParentPKID)

事件名称

EventName

varchar(50)

备注

Remark

varchar(50)

发生时间

OccurTime

dateTime

3、货运单详表:

用于记录货物的详细信息。

如表2.4所示。

表2.3货运单详表(Accept_CarryBillDetail)

名称

字段

数据类型

是否主外键

是否允许为空

PKID

PKID

int

主键

货运单PKID

GoodsBillCode

int

外键(Accept_CarryBillParentPKID)

货物编号

GoodsCode

varchar(50)

货物名称

GoodsName

varchar(50)

规格

Size

varchar(50)

包装

Pack

varchr(50)

件数

PieceAmount

int

重量

Weight

real

体积

Volumn

real

货物价值

GoodsValue

money

保险费

Insurance

money

运费

Carriage

money

计价方式

PriceMode

varchar(50)

保险费率

InsuranceRate

real

剩余件数

RemeinPieceCount

int

2.2.2存储过程设计

该接货管理系统主要包括19个存储过程和一个函数,具体要求和设计如以下所示。

(1)uspGetCarryBills:

该存储过程是获取多条货运单信息,具体要求和设计如表2.1所示,

表2.1存储过程uspGetCarryBills

存储过程名称

uspGetCarryBills

功能描述

获取多条货运单信息

输入参数

@goodsBillCodevarchar(50),

@sendGoodsCustomervarchar(50),

@receiveGoodsCustomervarchar(50),

@sendGoodsAddrvarchar(50),

@receiveGoodsAddrvarchar(50),

@beginSendGoodsDatedatetime,

@endSendGoodsDatedatetime,

@statevarchar(50),

@pageIndexint,

@pageSizeint,

输出参数

@recordCount

返回值

结果集

PKID--货运单信息主键

GoodsBillCode,--货运单编号

SendGoodsAddr,--起点

ReceiveGoodsAddr,--终点

SendGoodsDate,--托运时间

ReceiveGoodsCustomer,--收货客户

ReceiveGoodsCustomerTel,--收货客户电话

State,--状态

涉及到的表

1、货运单主表:

Accept_CarryBillParent

2、货运单事件表:

Accept_CarryBillEvent

操作说明

过滤条件,同时满足如下6个条件:

1)GoodsBillCodeLike'%'+@goodsBillCode+'%'

2)SendGoodsCustomerLike'%'+@sendGoodsCustomer+'%'

3)ReceiveGoodsCustomerLike'%'+@receiveGoodsCustomer+'%'

4)如果@beginSendGoodsDateISNOTNULL,SendGoodsDate>=@beginSendGoodsDate

5)如果@endSendGoodsdateISNOTNULL,SendGoodssDate<=@ednSendGoodsDate

6)如果@sendGoodsDate<>'',SendGoodsAddr=@sendGoodsAddr

7)如果@receiveGoodsAddr<>'',ReceiveGoodsAddr=@receiveGoodsAddr

8)如果@state<>'',EventName=@state采用SQLSERVER2005的分页新特性,实现读取第@pageIndex页的@pageSize条数据

(2)uspGetCarryBill:

该存储过程是获取单条货运单信息,具体要求和设计如表2.2所示。

表2.2存储过程uspGetCarryBill

存储过程名称

uspGetCarryBill

功能描述

获取单条货运单信息

输入参数

@PKID

输出参数

返回值

结果集

GoodsBillCode,--货运单编号

SendGoodsDate,--托运日期

SendGoodsAddr,--起点站

ReceiveGoodsAddr,--到达站

ReceiveGoodsCustomerCode,--收货客户编号

ReceiveGoodsCustomerAddr,--收货客户地址

ReceiveGoodsCustomerTel,--收货客户电话

ReceiveGoodsCustomerMobile,--收货客户手机

SendGoodsCustomerNo,--发货客户编号

SendGoodsCustomerAddr,--发货客户地址

SendGoodsCustomerTel,--发货客户电话

SendGoodsCustomerMobile,--发货客户手机

Carriage,--运费

Insurance,--保险费

PayMode,--付款方式

FetchGoodsMode,--取货方式

HelpAcceptPayment,--代收货款

AcceptprocedrueRate,--代收佣金率

TransferStation,--中转目的地

EmployeePKID,--业务员

PayKickback,--付回扣

WriteBillPerson,--填票人

WriteDate,--填写日期

Remark,--备注

AcceptStation,--接货点

涉及到的表

1、货运单主表:

Accept_CarryBillParent

操作说明

1.从货运单主表中查询结果集包含的所有字段

过滤条件:

PKID=@PKID

(3)uspCreateCarryBill:

该存储过程是增加货运单,具体要求和设计如表2.3所示。

表2.3存储过程uspCreateCarryBill

存储过程名称

uspCreateCarryBill

功能描述

增加货运单

输入参数

@goodsBillCodevarchar(50),--货运单编号

@sendGoodsDatedatetime,--托运日期

@sendGoodsAddrvarchar(50),--起点站

@receiveGoodsAddrvarchar(50),--到达站

@receiveGoodsCustomerCodevarchar(50),--收货客户编号

@receiveGoodsCustomervarchar(50),--收货客户名称

@receiveGoodsCustomerAddrvarchar(50),--收货客户地址

@receiveGoodsCustomerTelvarchar(50),--收货客户电话

@receiveGoodsCustomerMobilevarchar(50),--收获客户手机

@sendGoodsCustomerNovarchar(50),--发货客户编号

@sendGoodsCustomervarchar(50),--发货客户名称

@sendGoodsCustomerAddrvarchar(50),--发货客户地址

@sendGoodsCustomerTelvarchar(50),--发货客户电话

@sendGoodsCustomerMobilevarchar(50),--发货客户手机

@carriagemoney,--运费

@insurancemoney,--保险费

@payModevarchar(50)--付款方式,

@fetchGoodsModevarchar(50),--取货方式

@helpAcceptPaymentmoney,--代收贷款

@acceptprocedureRatevarchar(50),--代收佣金率

@transferStationvarchar(50),--中转目的地

@employeePKIDint,--业

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 演讲主持

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1