083362 07张明月实训报告2--正文.doc_第1页
083362 07张明月实训报告2--正文.doc_第2页
083362 07张明月实训报告2--正文.doc_第3页
083362 07张明月实训报告2--正文.doc_第4页
083362 07张明月实训报告2--正文.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

目 录 引 言 1 1 系统分析 3 1 1 需求分析 3 1 2 功能分析 3 1 3 可行性分析 3 1 3 1 操作可行性 3 1 3 2 经济可行性 3 1 3 3 技术可行性 3 1 4 开发工具简介 4 1 4 1 C 概述 4 1 4 2 SQL Server 2005 概述 5 1 5 架构简介 6 2 系统总体设计 7 2 1 系统功能结构设计 7 2 2 数据库设计 8 2 2 1 数据表设计 8 2 2 2 存储过程设计 9 3 系统详细设计与实现 12 3 1 票据分发信息增加模块 12 3 2 票据分发信息查询模块 14 3 3 票据分发信息编辑模块 15 3 4 票据分发信息销核模块 17 结 论 19 参 考 文 献 20 1 引引 言言 随着 Internet 和相关技术日新月异的发展 Web 应用已经成为目前企业应 用最广泛的一种形式 在企业应用软件中 若按系统部署的体系结构来分 往 往可将其分为 B S Browser Server 和 C S Client Server 结构模式 数据库研究跨越于计算机应用 系统软件和理论三个领域 其中应用促进 新系统的研制开发 新系统带来新的理论研究 而理论研究又对前两个领域起 着指导作用 数据库系统的出现是计算机应用的一个里程牌 它使得计算机应 用从以科学计算为主转向以数据处理为主 并从而使计算机得以在各行各业乃 至家庭普遍使用 在它之前的文件系统虽然也能处理持久数据 但是文件系统 不提供对任意部分数据的快速访问 而这对数据量不断增大的应用来说是至关 重要的 为了实现对任意部分数据的快速访问 就要研究许多优化技术 这些 优化技术往往很复杂 是普通用户难以实现的 所以就由系统软件 数据库管 理系统 来完成 而提供给用户的是简单易用的数据库语言 由于对数据库的 操作都由数据库管理系统完成 所以数据库就可以独立于具体的应用程序而存 在 从而数据库又可以为多个用户所共享 因此 数据的独立性和共享性是数 据库系统的重要特征 数据共享节省了大量人力物力 为数据库系统的广泛应 用奠定了基础 数据库系统的出现使得普通用户能够方便地将日常数据存入计 算机并在需要的时候快速访问它们 从而使计算机走出科研机构进入各行各业 进入家庭 Microsoft NET Framework 是微软推出的一套下一代开发平台 NET 基于 开发人员的角度来说它是一个公共平台的类库 FCL 包含了近 100 个命名空 间 namespace 的近 5000 个类 想想看这是多的强大 还包括一个公共语言 运行库 CLR 因为只要符合 NET 的公共运行规范 CLS 的语言都可以 使用它 提供的强大的类 并编译为微软的中间语言 MSIL 在其他的应用中就可以 当作一个组件来调用 同时享受公共运行库带来的一切好处 垃圾自动回收 GC 实时编译 JIT 跨语言互动 跨平台 NET 还可比喻是操作系统提供 给开发人员的面向对像的 API ASP net 是 net 中的一部分 它最大的优点除 了是编译执行速度快外 我觉得最大的优点是页面和代码分离的编写方式 再 加上 net 库提供的支持事件的各种 WEB 控件 以及 NET 公共平台的类库 FCL 和以前编写网页方式相比可谓是一场革命 2 快递是跨地区 跨行业的运作系统 标准化程度的高低不仅关系到各种快 递功能 要素之间能否有效衔接和协调发展 也在很大程度上影响着全社会快 递效率的提高 在考察了快递的日常业务以及参考了其他快递管理系统后 快 递管理系统中存在的主要问题体现在以下几个方面 快递公司不能全面 清晰 的确认收件人地址 联系方式 货物的数量 名称 价值 不能客户手中的商 品进行有效的售后管理 消费者收货时没有在货运单上先签字后验收 自身的 权益将很难得到保障 所以确定了本系统的需求 在计算机网络 数据库和先 进的开发平台上 利用现有的软件 配置一定的硬件 为企业提供准确 精细 迅速的各种信息 通过快件管理系统 可以有效地管理人员 有效的配置人员 及运送的快件 达到资源合理利用 本快递管理系统是在 net 平台上运用 ASP NET 技术来实现的 本系统的主 要功能有层调用 SQL Server 2005 的存储过程进行数据处理 这里介绍票据管理 功能模块 该模块的主要功能有对票据本的添加 修改 删除和查询 票据的 类型包括 货运单和回执单 票据的状态分别是已填和作废 当货运单或回执 单填写完成时 则该票据的状态是已填 当已填的票据被删除时 则该票据的 状态是作废 本文共分为三章来介绍快递管理系统的设计与实现 第一章系统分析 在 系统分析中主要是系统的需求分析 系统的功能分析 可行性分析 开发工具 简介 架构简介等 第二章系统总体设计 提出系统功能模块的细分和数据库 的详细设计等 第三章系统详细设计与实现 主要包括系统功能子模块的设计 与实现 设计理念 实现功能和最终得到的结果等 3 1 系统分析 1 1 需求分析 目前大多数快递加盟网点都使用中心提供的客户端进行日常的营业作业 但中心的系统主要设计目的是为了和网点进行日常对账和结算 对于网点自身 功能要求不是无法达到就是设计过于复杂 使用不方便 因此网点除了使用中 心的系统录单 扫描 对账外 其他功能很少用到 随着快递公司业务的发展 快递业务具有客户量大 分散 件数多 重量小 时效性强 市场竞争激烈等 特点 业务量不断增多 跨区域工作的需求 客户需要一种能够运行于 B S 模 式的快递管理系统 1 2 功能分析 本模块的主要功能是对票据的分发 票据的管理 票据的查询以及对票据 的销核 其中 在票据的分发里主要是添加新的票据信息 票据管理实现的是 对已有的票据进行修改和删除 在票据查询里可以通过多种过滤条件进行查询 票据各个信息 而对于票据销核 则更进一步了解票据的明细信息 1 3 可行性分析 1 3 1 操作可行性 本系统性能稳定 简单易用易懂 功能完善 大型数据库提供高效 安全 的数据存储机制 有利于管理人员的使用 大大提高管理的效率 1 3 2 经济可行性 本次系统的课设所用到的只是所用到的计算机和计算机上所安装时的软件 来完成这次的开发 无需要经济上的投入 因此在经济上是可行的 1 3 3 技术可行性 4 Microsoft Visual Studio NET 2005 采用了可视化面向对象工具开发 其窗口 界面简洁易懂 易于操作 Microsoft SQL Server2005 具有上手容易 可兼容性 良好 扩展性强并且易于操作等诸多优点 所以系统在技术上是可行的 1 4 开发工具简介 Visual Studio NET 是一个功能强大 高效并且可以扩展的编程环境 是一 个构建企业分布式应用的开发平台 基于 Web 服务的技术得到了 Visual Studio NET 的大力支持 使用 Visual Studio NET 开发平台可以构建 Windows 应 用程序 Web 应用程序以及 Web 服务 使用 Visual Studio NET 构建分布式应 用程序将更加简单 高效而且稳定 1 4 1 C 概述 C 语言是一门简单 现代 优雅 面向对象 类型安全 平台独立的一 门新型组件编程语言 其语法风格源自C C 家族 融合了 Visual Basic 的高效和 C C 强大 其优雅的语法风格 创新的语言特性 因而深受世界 各地程序员的好评和喜爱 C 起源于 C 语言家族 因此 C C 和 Java 的程序员能很快熟悉它 C 获得了 ECMA 和 ISO IEC 的国际标准认证 它 们分别是 ECMA 334 标准和 ISO IEC 23270 标准 Microsoft 用于 NET 框 架的 C 编译器就是根据这两个标准实现的 本期专题力求对C 做一个简 单明了的说明 目的是向读者提供对语言的入门介绍 以便于读者能够快速 上手编写程序 1 C 的特点 基本的数据类型 C 拥有比 C C 或者 Java 更广泛的数据类型 这些类型 是 bool byte ubyte short ushort int uint long ulong float double 和 decimal 象 Java 一 样 所有这些类型都有一个固定的大小 又象 C 和 C 一样 每个数据类型 都有有符号和无符号两种类型 与 Java 相同的是 一个字符变量包含的是一个 16 位的 Unicode 字符 C 新的数据类 型是 decimal 数据类型 对于货币数据 它能存 放 28 位 10 进制数字 中间代码 微软在用户选择何时 MSIL 应该编译成机器码的时候是留了很大 的余地 微软公司声称 MSIL 不是解释性的 而是被编译成了机器码 而这种实 现方式决定了基于 MSIL 的程序 指的是用 C Microsoft Visual Studio C Managed C C 的一个符合 CLS 的版本等语言编写的程序 将在性能上超 5 过 解释性的 Java 代码 命名空间中的申明 当创建一个程序的时候 在一个命名空间里创建了一 个或多个类 同在这个命名空间里 在类的外面 还有可能声明界面 枚举类 型和结构体 必须使用 using 关键字来引用别的命名空间的内容 两个基本类 一个名叫 object 的类是所有别的类的基类 而一个名叫 string 的类也像 object 一样是这个语言的一部分 2 C 的优点 1 C 吸取了 JAVA 的语法结果 又结合了 C 的结构 进行了一些改 进 C 不像 JAVA 那样完全解释执行 C 采用编译的汇编代码进行执行 所以 C 的运行效率比 JAVA 快 但不如 C C 能与操作系统底层交互 JAVA 则 不可能 如建立一个半透明的窗口 C 和 C 轻而易举 JAVA 比登天还难 不过 JAVA 的最大优点是完全跨平台 这是 JAVA 程序员唯一的言辞 2 NET 平台将 C 作为其固有语言 重温了许多 Java 的技术规则 C 中也有一个虚拟机 叫做公用语言运行环境 CLR 它的对象也具有同样的层 次 但是 C 的设计意图是要使用全部的 Win32 API 甚至更多 由于 C 与 Windows 的体系结构相似 因此 C 很容易被开发人员所熟悉 3 Java 的目的是要拯救分布式计算世界 C 则不同 C 本质上是 C 的进化产物 使用了包括声明 表达式及操作符在内的许多 C 特征 但是 C 还有更多的增强功能 比如类型安全 type Safe 事件处理 碎片帐集 代码安全性等 在 C 中 除了可以使用许多 API 更能使用 NET 类 特别地 是 我们可以处理 COM 的自动化和 C 类型的函数 4 C 还让你调用无管理的代码 也就是在 CLR 引擎控制之外的代码 这种不安全的模式允许你操作原始指针来读和写内置碎片帐集控制以外的内存 1 4 2 SQL Server 2005 概述 SQL Structured Query Language 结构查询语言 是一个功能强大的数据 库语言 ANSI 美国国家标准学会 声称 SQL 是关系数据库管理系统的标准 语言 数据的结构化 数据的共享性好 数据的独立性好 数据存储粒度小 数据管理系统 为用户提供了友好的接口 数据库系统的核心和基础 是数据 模型 现有的数据库系统均是基于某种数据模型的 数据库系统的核心是数据库 管理系统 数据库系统一般由数据库 数据库管理系统 DBMS 应用系统 数 6 据库管理员和用户构成 DBMS 是数据库系统的基础和核心 1 5 架构简介 三层架构一般指的是界面层 业务层 数据层 界面层就是系统的操作界面 和用户直接交互的地方 业务层又称为逻辑层 英文名称是 Business Logic Layer 简称 BLL 是 执行业务逻辑的地方 也就是业务规则都在这一层体现 数据层也称为数据访问层 英文名称是 Database Access Layer 简称 DAL 这里是直接和数据库进行交互的地方 也是整个系统里唯一允许访问数 据库的地方 所谓三层体系结构 是在客户端与数据库之间加入了一个 中间层 也叫 组件层 该层负责处理业务逻辑的实现 这里所说的三层体系 不是指物理上 的三层 不是简单地放置三台机器就是三层体系结构 也不仅仅有 B S 应用才 是三层体系结构 三层是指逻辑上的三层 即使这三个层放置到同一台机器上 通常 net 三层架构就是基于 net 的三层架构应用模式 ASP NET 可以使用 NET 平台快速方便的部署三层架构 ASP NET 革命性的变化是在网页中也使用 基于事件的处理 可以指定处理的后台代码文件 可以使用 C VB J 作为后台 代码的语言 NET 中可以方便的实现组件的装配 后台代码通过命名控件可以 方便的使用自己定义的组件 显示层放在 ASP 页面中 数据库操作和逻辑层用 组件来实现 这样就很方便的实现了三层架构 7 2 系统总体设计 2 1 系统功能结构设计 1 能处理散客预定 团体预定 客房预定 还可以进行预定未到处理 和 预售查询 客户预定后存储用户的信息如姓名 性别等 更新数据库中预定记 录 并分配一个独立的 ID 号 以方便进行各种查询及更新操作和身份识别 根 据用户输入的时间 查询数据库显示可售房间信息 根据当天时间 查询数据 库中的预定记录显示预定未到报表 并对预定未到的房间为可售房间 2 1 所示 图 2 1 票据管理功能描述 2 票据分发 1 票据分发是对票据的添加 填写一份货运单或回执单 内容包括 单据 类型 单据开始号 单据结束号 领票人 接货点 领票时间和分发人等 2 填写票据分发信息时需要注意的是 票据开始号要小于票据结束号 且在 1 到 9999 之间 票据开始号 票据结束号 领票人 接货点 领票时 8 间和分发人为必填项 3 票据管理 1 票据管理主要是对已填的票据进行修改或者删除 修改的内容包括 领 票人 接货点及分发人等 2 对于票据的修改 首先由票据查询页面选定要修改的票据 单击票据开 始号可直接跳转至票据修改界面 除领票人 接货点和分发人外 其他各个信 息由上一页默认 对于票据的删除 则选定已填某票据 删除后 该票据的状 态为作废 4 票据查询 1 票据查询是对已经填写完成的票据进行核实查询 查询的方式可按单据 类型查询 也可按领票人进行查询 本页面可以通过单击票据开始号进行票据 管理 5 票据销核 1 票据销核是对票据的已填或作废情况进行核对 分别可以按照票据编号 票据类型 票据状态以及必要的时间范围进行搜索 当货运单或回执单填写完 成后 则该票据的状态便是已填 已填的货运单或回执单被删除时 该票据单 的状态便是作废 2 2 数据库设计 2 2 1 数据表设计 该模块所涉及到的表主要有单据分发表和单据明细表 本模块应该能够将 表中信息导出并显示出来 用户应对相应信息进行查询 添加 删除 修改都 涉及到这两个表 对应删除 修改添加能改变表里面的信息 并将其存到数据 库中 1 单据分发表 用于存放票据分发信息 包括 单据类型 单据开始编号 单据结束号 领票人 接货点 领票时间及分发人等 如表 2 1 所示 表 2 1短消息信息 MessageMsg表 名称名称字段字段数据类型数据类型 短消息标识MessageMsgIdIntege 短消息发送者姓名SenderVariable characters 20 9 单据开始编号BillStartCodevarchar 50 单据结束编号BillEndCodevarchar 50 领票人ReceiveBillPersonvarchar 50 接货点AcceptStationvarchar 50 领票时间ReceiveBillTimedatetime 分发人ReleasePersonvarchar 50 2 单据明细表 用于存放单据明细信息 包括 单据类型 单据编号 单 据状态 填写日期及接货点等 如表 2 2 所示 表 2 2 单据明细表 名称名称字段字段数据类型数据类型 PKIDPKIDint 单据类型BillTypevarchar 50 单据编号BillCodevarchar 50 单据状态BillStatevarchar 50 填写日期WriteDatedatetime 接货点AcceptStationvarchar 50 2 2 2 存储过程设计 票据管理模块共包含 9 个存储过程 其中主要的存储过程有 uspGetBillDispenses uspGetBillDetails uspCreateBillDispense 存储过程 uspGetBillDispenses 是获取多条票据分发信息 如下表 2 3 所示 表 2 3 存储过程 uspGetDispenses 存储过程名uspGetBillDispenses 功能描述获取多条票据分发信息 输入参数 receiveBillPerson varchar 50 领票人名称 billType varchar 50 票据类型 pageIndex int 待读取的页索引 pageSize int 每页显示的记录数 输出参数 recordCount int out 总记录数 返回值无 10 结果集PKID 票据 ID BillType 票据类型 BillStartCode 票据开始号 BillEndCode 票据结束号 ReceiveBillPerson 领票人 AcceptStation 接货点 ReceiveBillTime 领票时间 ReleasePerson 分发人 涉及到的表1 票据分发表 BillMgt BillDispense 操作说明过滤条件 1 ReceiveBillPerson Like receiveBillPerson 2 如果 billType 则 BillType billType 采用 SQL SERVER 2005 的分页新特性 实现读取第 pageIndex 页的 pageSize 条数据 存储过程 sp Message DeleteSentMsgs 是获取多条票据明细信息 存储过程 表结构设计如下表 2 4 所示 表 2 4 存储过程 sp Message DeleteSentMsgs 存储过程名sp Message DeleteSentMsgs 功能描述删除发送的消息 输入参数 msgId varchar 2000 短信标石字符串 以逗号分隔 输出参数无 返回值0 操作失败 1 操作成功 结果集无 涉及到的表1 票据明细表 BillMgt Details 操作说明过滤条件 1 BillCode Like billCode 2 如果 billType 不等于 则 BillType billType 3 如果 billStatus 不等于 则 BillStatus billStatus 4 如果 beginWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate beginWriteDate 5 如果 endWriteDate 不为 null 则 WriteDate Int32 Parse TextBox2 Text Utility AlertMsg this Page 单据开始号必须小于单据结束号 return 声明票据实体类对象 BillDispense billDispense new BillDispense 为票据实体类对象的各个属性赋值 billDispense BillType DropDownList1 SelectedItem Text billDispense BillStartCode TextBox1 Text 20 billDispense BillEndCode TextBox2 Text billDispense ReceiveBillPerson DropDownList2 SelectedValue billDispense AcceptStation TextBox3 Text billDispense ReceiveBillTime Utility ToDateTime TextBox4 Text billDispense ReleasePerson DropDownList3 SelectedValue 声明票据业务类对象 BillBusiness billBusiness new BillBusiness 增加票据分发信息 int rtnCode billBusiness CreateBillDispense billDispense if rtnCode 0 Response Redirect BillDispenseList aspx else string errorMessage switch rtnCode case 3 errorMessage 增加票据分发信息操作失败 break case 1 errorMessage 票据开始编号已经存在 break case 2 errorMessage 票据结束编号已经存在 break Utility AlertMsg this errorMessage 3 2 票据分发信息查询模块 票据分发信息查询模块实现对票据分发信息的查询功能 该模块可分别根 据单据类型及领票人进行搜索查询 然后可单击票据开始号对票据进行修改 修改内容包括 领票人 接货点和分发人 单击增加单据分发可直接跳转到票 据分发的增加页面 可直接单击搜索键查看全部信息 界面如图 3 2 示 也可 指定单据类型 领票人进行特定查看 界面如图 3 3 所示 实现过程 21 在本界面中放置了 GridView 控件 用户控件 和 Imagebutton 等控件来实 现搜索功能 GridView 控件用于显示数据库的数据 先实例化 BillBusiness 类 在调用 GetBillDispenses 方法 再调用执行存储过程的方法执行 uspGetBillDispenses 存储过程 存储过程中可以实现模糊查询还有进行分页 最后通过使用 DataBind 绑定到页面的 GridView 控件上以显示数据 如果进行 页面跳转的话还要调用用户控件里面的方法 图 3 2 票据分发信息查询 22 图 3 3 票据分发信息查询 特定条件 3 3 票据分发信息编辑模块 票据分发信息编辑模块实现对票据信息的修改删除功能 首先是从票据分 发信息查询模块中跳转过来 并传来了参数 通过这个参数可以直接进行修改 删除功能功能 并还可以进行返回 本界面是由单击图 3 3 最后一行所跳转的 界面 界面如图 3 4 所示 23 图 3 4 票据分发信息编辑 实现过程 1 主要控件实现 本页面使用了 TextBox 控件 Imagebutton 等控件 通过票据分发信息编辑 模块传过来的参数 先实例化 BillBusiness 类 调用数据层中的 UpdateBillDispense 和 DeleteBillDispense 方法 在进行存储过程的调用执行 分 别进行修改删除 2 主要代码实现 以下为修改按钮单击事件 protected void ImageButton1 Click object sender ImageClickEventArgs e 声明票据实体类对象 BillDispense billDispense new BillDispense 为票据实体类对象的各个属性赋值 billDispense PkId Int32 Parse ViewState pkId ToString billDispense ReceiveBillPerson this DropDownList2 SelectedValue billDispense AcceptStation this TextBox3 Text billDispense ReleasePerson this DropDownList3 SelectedValue 声明用户处理类对象 BillBusiness billBusiness new BillBusiness if billBusiness UpdateBillDispense billDispense Response Redirect BillDispenseList aspx 24 修改操作成功 else Utility AlertMsg this 修改票据分发信息失败 修改操作失败 以下为删除按钮单击事件 protected void ImageButton2 Click object sender ImageClickEventArgs e 声明用户处理类对象 BillBusiness billBusiness new BillBusiness if billBusiness DeleteBillDispense Int32 Parse ViewState pkId ToString Response Redirect BillDispenseList aspx 删除操作成功 else Utility AlertMsg this 删除票据分发信息失败 删除操作失败 3 4 票据分发信息销核模块 票据分发信息销核模块实现对票据本的已填 作废情况进行核实 可按单 据编号进行查看该票据是状态及其他信息 也可根据票据状态 票据类型在一 定的时间内进行搜索查看 界面如图 3 5 所示 25 图 3 5 票据销核 实现过程 在本界面中放置了 GridView 控件 用户控件 和 Imagebutton 等控件来实 现搜索功能 Grid

温馨提示

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

评论

0/150

提交评论