25/1/11哈尔滨工业大学软件学院1和佳NERP财务管理系统应收子系统的设计与实现姓名:班号:实习单位:北京和佳公司校内导师:企业导师:25/1/11哈尔滨工业大学软件学院2导航•项目背景•系统架构•主要开发内容•系统需求分析•详细设计•实现及性能分析•致谢25/1/11哈尔滨工业大学软件学院3项目背景•计算机技术的发展推动了ERP产品的更新换代。•传统的基于C/S结构的ERP系统在开放性与信息的发布、交流等方面越来越显示出巨大的局限性,严重影响到企业适应全球性信息化进程的步伐。•B/S架构克服了C/S架构的缺点。•在此背景下,和佳公司提出了在J2EE平台上开发新一代ERP的任务。25/1/11哈尔滨工业大学软件学院4主要开发内容•应收子系统的功能管理应收帐款日常业务提供简单的数据分析功能•应收子系统的目标:及时处理客户应收款和回款,及时催讨欠款,使企业的应收款处在合理的范围内,促进企业流动资金的正常运转25/1/11哈尔滨工业大学软件学院5系统模块划分•系统设置•应收单管理•回款单管理•应收与回款结算•转账管理•坏账管理•月末结算•统计查询25/1/11哈尔滨工业大学软件学院6系统分析•获取需求的过程:在分析客户需求的基础上,列出一系统的用例和场景,对用例进行细化,同时画出单据的状态转换图。•应收管理子系统中最重要的功能模块为应收单管理、回款单管理、应收与回款结算。25/1/11哈尔滨工业大学软件学院7应收单管理用例25/1/11哈尔滨工业大学软件学院8应收单状态转换图25/1/11哈尔滨工业大学软件学院9系统整体架构•系统是基于MVC(Mode-View-Controller)架构模式的。MVC代码将程序代码整理分割成三部分,Model部分是业务逻辑对象,Controller部分接受来自View输入的信息并与Model部分进行交互,是业务流程控制对象,View部分负责展现数据、接受用户录入。•将MVC模式应用于Web系统中:JSP用于实现View,Servlet用于实现Controller,EJB用于实现Mode。25/1/11哈尔滨工业大学软件学院1025/1/11哈尔滨工业大学软件学院11数据库表表名描述art01往来明细账表art02回款表art03总账表art04往来结算表art05转账记录表rpm01账龄设置表25/1/11哈尔滨工业大学软件学院12功能设计•从前台页面、后台逻辑处理、前后台接口三个方面分别进行。•前台页面设计:页面显示的内容和格式,放在前台的逻辑代码(如数据验证、数据提交等操作)•后台页面设计:EJB的接口25/1/11哈尔滨工业大学软件学院13应收单录入页面设计25/1/11哈尔滨工业大学软件学院14EJB设计ArManagerEJBBean管理应收单据,包括应收单据的增、删、改、送审、审核、驳回等业务处理逻辑IncomeEJBBean管理回款单,包括回款单增、删、改、送审、审核、驳回、结算等业务处理逻辑ARBookEJBBean管理应收台账ArInitMainEJBBean初始化时的操作25/1/11哈尔滨工业大学软件学院15ArManagerEJB类图25/1/11哈尔滨工业大学软件学院16前后台接口的设计•ExtraUpdater类的设计•在前台页面按钮和后台逻辑代码之间建立连接•提取前台传来的数据,然后构造VO,再将VO传给EJB处理,在此过程中捕获例外,将例外信息返回前台页面25/1/11哈尔滨工业大学软件学院17系统实现•前台页面:JSP+JavaScript+Extra•Java类:Eclipse3.0+Lomboz+HibernateSyncronizer•Java类的编程标准在EJB远程方法开始的位置打开Session,在EJB方法退出时关闭Session将捕获的例外包装成AppException后抛出在Updater里使用ExceptionUtil工具类捕获例外保存数据时,先保存主表数据,然后保存从表数据,删除时相反25/1/11哈尔滨工业大学软件学院18报表•系统提供了统计查询的功能。可以打印报表。报表使用JasperReport开发•客户端有一个reportApplet,负责打印报表。它生成一个JRViewer,将它添加到JFrame上显示出来。•用于生成JRViewer的JasperReport对象有两种来源:一是使用Struts从服务器传递JasperReport对象到客户端,一是在客户端利用前台页面数据构造XML数据来生成JasperReport对象。25/1/11哈尔滨工业大学软件学院19使用Struts实现帐龄分析页面•列数随用户设置的帐龄区间段数目改变而改变•使用Struts可实现这种需求•Struts将Htt...