用友UAP开发平台介绍_第1页
用友UAP开发平台介绍_第2页
用友UAP开发平台介绍_第3页
用友UAP开发平台介绍_第4页
用友UAP开发平台介绍_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、用友UAP开发平台介绍UAP作为基于多组织架构的企业应用运行平台、基于模式化的开发平台、开放的系统集成平台及统一的系统管理平台,是建立在Java语言所提供的强大功能的基础上开发的。Java是一种简单的、面向对象的、分布式的、结构中立的、安全的、可移植的、性能优异的、多线程的、动态的开发语言,适合构建基于网络计算的企业应用。由于Java的平台无关性,使得UAP可以运行在不同硬件平台、不同操作系统平台上。基于UAP所开发的应用软件采用Browser/Server(浏览器/服务器)的方式来运行。B/S的运行方式最大限度地方便了用户部署和维护大型软件系统,保证了瘦客户机运行,从而大大降低了用户目标系统

2、的总体拥有成本(TCO)。UAP平台经过十几年的发展,在实际项目当中总结出许多典型的管理信息系统的应用模式,在此基础上,用友公司提供企业建模开发平台,将用友的先进的软件设计经验和先进的开发技术融入到平台当中,可全面解决企业信息化建设各种IT系统的业务场景。1.1 基于UML的建模平台UAP是基于元数据的模型驱动开发平台,将程序开发工作的抽象层次提高到和ERP日常业务相关的操作上,将一些常用界面(表单、报表、打印、查询)抽象成为模型,模型结合元数据定义出数据的各种展现操作方式,使用极少的代码量即可产生客户需要的模块,并且通过各个层次的抽象分离很好的支持了逆向工程,有利于产品迭代开发。使用UAP平

3、台进行业务实现可以分为如下几大步骤:n 业务模型设计:使用模型设计器创建业务元数据并发布。业务模型设计器如图14所示。图14 NCUAP元数据模型设计器示意图n 自动生成数据模型:根据定义好的业务模型可以自动生成数据模型,完成建立数据库结构工作。操作如图15所示。图15 NCUAP元数据自动生成数据模型示意图n 用户界面模型设计:使用UAP集成开发工具进行单据表单模板设计、查询模板设计、打印模板设计,通过UI组装完成完成界面模型设计工作。如图16、图17所示。图16 NCUAP元数据单据模板设计示意图图17 NCUAP元数据UI组装示意图Ø 节点发布,生成代码,单据开发完成:如图18

4、所示。图18 NCUAP元数据节点发布及生成代码示意图1.2 数据访问及缓存机制UAP元数据数据库访问居于对象关系映射,大大提高开发效率、同时提升软件产品的可维护、扩展性。因此,在UAP的业务开发中必要通过引入对象-关系映射系统中间件,实现数据库的快速开发。目前UAP可以通过JDBC开发了单独的持久化层,把数据库访问操作封装起来,提供简洁的API,供业务层统一调用,实现了自己的ORM系统。支持多种数据库,统一接口转换SQL语句,大大简化开发过程。通过NC数据库访问框架可以把内存中的对象持久化到数据库、把数据库中的关系数据加载到内存中,同时保证了系统频繁地访问数据库的性能,降低访问数据库的频率。

5、 SuperVO是NC系统中比较特殊的值对象,该值对象自身已经包涵了值对象到数据库中的映射信息,所以SuperVO的持久化更为简单方便,无需构造对象映射元数据类,可以直接对VO进行持久化操作。如下图19在最上层提供了基于元数据的持久化接口。可以实现对模型数据(NCObject)对象持久化操作,比如基本的增、删、查、改等操作。通过这些持久化服务可以进行对模型数据的数据库操作。同时业务建模框架还提供了代码生成和SQL生成的相关功能。其中代码生成用于生成模型对象(元数据实体)的类代码。图19 元数据数据访问 在UAP的数据访问模型中,对数据的删除,是采用逻辑删除的,而非物理删除,这样可以保证在误操作

6、的情况下还有机会恢复数据。对于一些经常被访问的基础数据,UAP提供服务器端和客户端的缓存机制,这样可以大大减少前后台的远程调用次数,减少了对数据库的访问,从而提高了业务处理速度,提高客户端响应速度。要做到合理的利用缓存机制,需要考虑到下面几个方面:1. 合理分配缓存数据到内存和文件,内存级缓存访问速度快,但容量有限;2. 有效判断缓存数据的时效性,即是否为更新数据;3. 动态监听基础数据的变更,及时更新缓存数据;4. 处理好应用服务器集群之间的缓存共享和同步;5. 对文件缓存要加密保护,不能被更改,尤其是客户端文件级缓存;6. 对缓存的读写操作,需要很好的封装,以便开发过程中的调用和缓存策略的

7、升级。1.3 数据权限管理UAP平台提供对常用的基础数据的访问权限控制,包括:科目、组织机构、人员、存货等。系统提供启用数据权限的设置功能,如下图20所示:图 20 数据权限UAP不仅预置了对常用基础数据的权限控制,还提供了对新开发功能数据的权限控制接口。对新开发的基本档案、基础数据、业务数据如果要进行权限控制,需要开发人员做好以下两步:1. 实现权限插件类,继承平台提供的基类nc.ui.uap.rbac.editor.tree.DefaultTreeResBusiService即可实现;2. 生成权限表和注册权限脚本,在表sm_powerresource里插入一条注册信息即可。1.4 可定制

8、的界面模型单据界面模板在UAP开发中占有非常重要的地位,NC绝大部分节点都是通过单据模板来定制展现的。1.4.1 单据模板1.4.2 模板设计器下图21为向导中的单据模板设计器。单据模板用于定义整个单据的展现形式,分为表头、表体和表尾三个区域。编辑器的元数据部分显示的是当前单据模板所依据的业务组件的实体树结构。设计者将相应的组件实体拖拽到相应的区域即可。图21 NCUAP单据界面模板设置示意图1.4.3 公式编辑器通过设置界面规则,配置公式,更加灵活,高效,能够让使用者和开发者的工作高度重叠,实施人员可以快速根据用户需要,编辑界面数据显示规则。帮开发人员从本来需要修改复杂代码才可以实现功能的途

9、径中走出来,大大降低界面代码为以前的 1/6,减少个性化开发工作量。公式语义层屏蔽了复杂的数据库结构。利用NC内置函数,方法等快速配置公式,填充表单元素。例如:字段显示与否,编辑与否,类型控制、长度控制,计算关系begindate->"2008-"+month+"-01",控制规则 $Error->iif(enddate<begindate,"编辑错误 开始时间需要小于结束时间" , "")等。单据模板公式配置如图22所示。图22 NCUAP单据模板公式配置示意图1.4.4 模板角色对应管理真正实

10、现不同用户,不同权限,不同模板。不同角色显示对应其关注内容,减少不必要冗余信息干扰,同时在另一方面也加强的数据的安全性。如图23所示。图23 NCUAP单据模板-角色对应示意图1.4.4.1 查询模板查询模板在单据进行查询时定制查询条件。下图为查询模板的设计器。设计器上方部分为基本信息设置,其中所关联的元数据组件不能修改。下方为属性设置,选择用户可以使用定制查询条件的属性字段拖拽到右边区域。对右边字段可以进行属性设置,比如是否锁定、默认值等。如图24所示。图24 NCUAP单据查询模板示意图下图为查询模板在使用时的展现形式。主要有两个编辑区:普通和高级。普通区的每个条件之间是AND的关系,可以

11、用于比较简单条件的定制;高级区通过对树形结构的操作实现条件语句的定义,也支持拖拽操作。对于常用的查询条件可以通过保存操作放到收藏夹中。NCUAP查询模板条件设置如图25所示。图25 NCUAP查询模板条件设置示意图不同角色不同的查询条件。图26 NCUAP查询条件示意图图26 NCUAP查询条件示意图1.4.4.2 打印模板企业信息化管理的重要目的之一,就是更好的管理企业的业务流转过程。信息系统中打印输出用于流转过程确认的纸样,能否满足企业管理要求,就成为信息系统是否成功的关键指标。NCUAP平台抽象出打印模板解决方案,以满足企业管理要求的多变的打印输出配置。请看示例:假设有一张凭证需要打印出

12、来,打印效果如图27所示,应如何实现?图27 凭证打印效果图如果把打印机想象成一张白板的话,打印,就是在白板上做绘制。上面的这张凭证,可以很容易地绘制出来。但是,当客户想要调整“收款凭证”这四个字的位置,改变它的字体,或是在下面的表格中增加金额列,是否必须修改打印程序?另外每张凭证的摘要数据、会计科目数据都是不一样的,如何用统一的打印程序将不同的数据打印出来?解决这个问题需要做到:1)可以配置字体、颜色、文本的打印位置、表格的行列等等,这满足了客户对于显示的个性化要求,2)在配置的时候,能把数据进行某种抽象,起到象征作用。实际打印时,抽象化的数据被赋予真实的值。NC系统的打印模板,就是采用这种

13、思路设计出来的。上面的这张凭证的打印模板如图28所示:图28 凭证打印模板设计图可以看到,打印模板是一个表格,其基本元素是单元格。对于单元格,可以定义字体、颜色、边框、文本对齐方式;对于行,可以定义行高、插入行、删除行;对于列,可以定义列宽、插入列、删除列。这些功能使得凭证的外观可方便灵活地配置。那如何进行数据的抽象呢?我们需要看看打印模板编辑器的全貌,如图29所示。图29 打印模板编辑器全貌图上面打印模板编辑器的右侧,有一个列表,列出了“凭证类别名称”、“制单日期”、“摘要”等在左侧表格以粉色背景出现的内容,这个列表里面的值,就是对数据的抽象,被称为数据源变量。因此,模板信息,既包括了显示的

14、样式,又包括了数据的抽象。它足以适应个性化的显示和动态的数据。最后一个问题是,如何赋真实的值给变量。上面的“凭证类别名称”、“摘要”等变量的真实的值来自于要打印的凭证,因此需要把要打印的凭证的指定信息取出来赋予给打印变量,实现这个过程的流程如图30:图30 打印模板赋值流程图左边的凭证代表财务中的凭证对象,它包含了真正的业务信息,中间的数据源是打印的标准取数接口。开发人员应从凭证中取得打印模板要使用的变量的数据,放到数据源里,打印模板从数据源接口取得变量的真实的值,填充到模板中。1.5 自定义报表企业信息化管理的成果展示,报表是重要手段之一,特别是领导应用的管理查询,更是信息系统的核心功能之一

15、。NCUAP平台抽象出查询引擎报表解决方案,以满足企业绝大多数的报表统计功能。图31 查询引擎示意图图31 查询引擎示意图1.5.1 数据报表模型设计在查询引擎报表解决方案中,查询模型设计是通过NCUAP平台的查询引擎管理功能点实现的。查询模型设计包括查询参数设计、查询SQL设计、数据交叉设计、代码嵌入设计、穿透规则设计、查询集成设计等多方面。以查询参数设计为例,如图32所示。图32 查询设计功能通过将数据交叉投影,用户能快捷从各种复杂的数据之中按各种不同纬度生成报表。图33 数据交叉功能更为复杂的面向分块报表的区域扩展,交叉投影技术,分组,过滤,排序,汇总,连接,颜色着重渲染等。图34 数据

16、交叉功能1.5.2 报表格式设计格式模型(又称界面模型)的设计包括引用查询设计、界面可视化设计、绑定数据集设计、数据预处理设计等几部分。数据预处理设计,又分为公式列设计、小计合计设计等几种设计方式。公式列设计如图35所示。图35 公式列设计功能1.5.3 报表发布展现设计报表查询设计和格式模型设计完成后,可以通过向导式的发布界面进行发布,如图36所示。图36 向导式的报表发布报表发布后,界面模型在运行态还提供了几种数据处理功能,包括查找,排序,过滤,公式列,小计合计,交叉和穿透等。查询引擎报表展现示意如图37。图37 查询引擎报表展现示意图1.6 工作流引擎工作流技术是当今一项飞速发展的技术,

17、它最基本的特性就是它能够结合人工和机器的行为,特别是能够与应用程序和工具进行交互,从而完成业务过程的自动化处理。工作流技术从出现到现在,已逐渐发挥越来越重要的作用。工作流能够为企业应用提供业务流程建模、管理和控制功能。工作流技术已成为企业信息化建设方案中必不可少的内容之一。从简单的办公自动化系统的开发,到企业ERP系统的实施,再到为提高企业运营效率而出现的BPR及BPM系统,工作流技术都发挥了相当重要的甚至是关键的作用。UAP工作流引擎负责解释执行由业务流设计器和审批流设计器设计的流程定义。UAP工作流引擎在流转过程中还可以调用各种自动应用,包括电子邮件、脚本以及Web服务等。业务流程框架还提

18、供了管理监控工具对运行中的流程实例进行状态查询和管理。对于流转过程中涉及到的数据交换,工作流引擎将调用交换引擎根据规则进行数据映射UAP业务流程,提供图形化设计器,如下图38所示:图 38 业务流程UAP审批流程,提供图形化设计器,如下图39所示:图 39 审批流设计器UAP审批流程可跟踪,如下图40所示:图 40 审批流跟踪上图中红色节点即为当前审批节点,可以看到整个流程的执行情况以及各处理环节的详细时间、审批意见等。1.7 文档资料UAP平台经过十几年的发展,提炼出很多高效、易用的解决方案,可全面解决企业信息化建设各种IT系统的开发需求。下面,将从开发框架、高速数据访问模型、元数据管理、界面模型、数据报表模型、工作流引擎、消息引擎、任务预警引擎等几方面分别介绍。此外,用友也提供应用集成产品,以解决

温馨提示

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

评论

0/150

提交评论