电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

NCV55元数据建模.ppt

NCV55元数据建模.pptNCV55元数据建模.pptNCV55元数据建模.pptNCV55元数据建模.pptNCV55元数据建模.ppt
NC企业建模用友软件股份有限公司NCUAP综述NCUAP平台所支撑的产品层次结构:产品-模块-功能节点功能节点是叶子节点,真正提供用户进行数据维护和业务操作功能节点是流程平台、会计平台、供应链应用等高级应用的基础组成部分。基于NCUAP平台进行开发,主要工作是进行功能节点的开发。最早也是最基础的节点开发框架是ToftPanel的开发框架NC企业建模整个过程最终产生的也是一个或多个功能节点。基本概念模型:对实际事物或对象的抽象,能够描述对象以及对象之间的关联关系。业务模型、数据模型、BI模型等元数据:描述数据的数据业务模型元数据、数据模型元数据等业务建模:从实际的业务需求出发,建立起业务所需的业务模型。功能建模:确定业务对象的功能及界面展现。3-3NC元数据框架介绍NC元数据的整体结构元数据仓库元数据业务模型元数据数据模型mappingDesignTimeRunTime模型设计器发布元数据访问服务管理工具NC企业建模组成框架及开发流程业务建模元数据模型接口定义元数据模型接口实现元数据查询服务接口基于元数据的数据访问DASFacade/NCObject基于元数据的持久化MDPersistenceService数据模型mapping功能建模代码生成SQL生成基于UAP基础平台基于UAP模板基于UAP流程平台及UI模式化单据模板打印模板查询模板功能建模集成开发环境基于Eclipse的模型设计器数据模型介绍数据模型对对象的存储结构以及存储结构之间的关系进行描述。按不同的应用层次分为:概念数据模型、逻辑数据模型和物理数据模型在NC业务建模的过程中,也同时完成了数据模型的创建。此处主要完成实体对应的数据库表结构、属性以及表之间的主外键关联关系。在建模过程中,有自动的转换映射关系,只需要进行必要的修改,而不需要完全的手动设置。准备工作业务建模也是以模块为单位进行组织的。准备工作(续)如果是新创建的模块或是之前没有注册过,需要在功能建模环境中进行模块信息注册。选择注册模块选择添加模块认识业务建模开发环境认识业务建模开发环境12356概念简介模块、组件、实体、属性、枚举、业务接口1.模块是安装的基本单元,在NC产品创建或升级帐套时以模块为单位对元数据进行发布。2.组件描述一个完整的业务功能,包含一个或多个实体、值对象、枚举、业务接口3.实体是指需要有唯一标识的业务对象,NC原有的大部分VO基本上都算得上是实体创建业务组件业务组件的创建版本号:记录组件当前版本,防止旧版本覆盖新版本代码风格:主要针对主子表及多子表结构,传统样式生成AGGVO,标准样式为OO多语言资源模块:对应多语言里的文件夹名,现在按照组件划分主实体:一个组件里如果有实体,必须设置主实体名称:必须全局唯一,否则不允许发布创建业务实体组件内对象的创建1)主键:实体必须设置主属性(主键)2)访问器:当组件代码样式选择传统样式时,针对主子表或者多子表中主表对应的实体,访问器要设置为AggVO,即聚合VO访问器,对应的子表或者仅有一个实体的组件,实体的访问器设置为NCVO.3)动态信息修改类:用于动态修改实体,是IDynamicEntityFactory的实现类。(是修改实体的属性描述信息)4)缺省表名:生成数据库时对应的表名5)业务接口实现类:如果实体实现了业务接口,这里可以注册实现类。创建业务实体(续)实体属性说明1)类型样式:主要分Single,REF,ARRAY,LIST,ARRAY和LIST都是聚集类型,只是生成代码是用数组表示还是List表示,按照NC编码习惯,推荐选择ARRAY形式。2)类型:可以自行选择,当建立实体间关系时,也会自动设置;主键一定要设置为UFID类型3)字段名称:生成数据库表列的名称4)访问策略:定义访问实体中属性的方式,元数据框架内部使用。聚合实体的关联子实体属性需要设置成BodyofAggVO的形式。5)计算属性:由其他属性计算得到,本身不需要保存到数据库,不会生成数据库的列6)空:是否可以为空7)授权:用于权限控制8)扩展标签:可以自由的给属性加上标注,比如@uniqueCheck,在程序中便可以通过这个标签来过滤属性。Listnc.md.model.impl.MDBean.getAttributes(Stringtag)快速创建业务实体如何快速创建业务实体创建枚举枚举是对有限值域信息的列举表示。枚举类型必须设置返回值类型,当前支持Integer和String两种,即枚举的真实值可以是Integer或者String类型。枚举类型不对应java类,由元数据框架负责存储特定枚举类型的所有可能取值。可以在实体的属性设置中将类型设置为枚举对象类型,则存储的即为该枚举的返回值。通过IAttribute.getDataType()便可以得到IType,如果为枚举类型,则可转型为IEnumType,通过IEnumType.getEnumValues()得到枚举类型列表。枚举类型在单据模板中会自动以下拉框的形式展现。创建业务接口业务接口对应着一个JAVA接口类型,除了普通意义上的接口与实现类的关系外,还定义了一些希望获知的属性,通过实现者(实体)配置属性的对应关系,从而通过接口很方便的获得实现者实体特定意义属性(如很方便的获得走流程实体的制单人、审批人等属性)。暂时系统内置了两个业务接口,如果单据走流程,必须实现pfbizitf接口,如果实现VO交换,则上游单据必须实现IHeadBodyQueryItf接口(流程平台有缺省的接口实现,不需要实体去实现);如果想把实体做成参照,必须实现dbinterface接口。有三个地方可以设置接口的实现类。业务接口实现类的采用优先级:实体与被实现特定接口实现关系连线上定义的实现类>实体上定义的业务接口实现类>业务接口上定义的业务接口实现类>系统根据影射关系生成的实现类。业务接口是根据NC某些特定需求(流程平台)而创建的,一般业务很少需要自己创建。业务接口的使用模型层的使用Mapnc.md.model.IBusinessEntity.getBizInterfaceMapInfo(StringfullIntefaceClassName)查询实现了特定业务接口的实体中的属性和接口方法的对应关系,如果客户实现了ICodeName,则customerBean.getBizInterfaceMapInfo(“nc.vo.bd.ICodeName”)将返回<”code”,CodeAttr>,<”name”,NameAttr>,<”displayName”,displayNameAttr>实例层的使用Customercust=newCustomer();cust.setPrimaryKey("pkaaaaaaaaaaa");cust.setCode1("code001");cust.setName1("nameadfafdafasd");NCObjectcustbasObj=NCObject.newInstance(cust);ICodeNamecodename=(ICodeName)custbasObj.getBizInterface("nc.vo.bd.customer.ICodeName");System.out.println(codename.getCode());System.out.println(codename.getName());操作操作用于实现upm文件的自动生成。仅用于服务接口及其相应实现的注册,不会进行服务接口方法的定义。生成的upm文件以组件为单位生成到相应模块的META-INFO目录下。关联关系的选择支持关联、1-1聚合、1-多聚合、1-n关联(持久层暂不支持)、实现暂不支持跨组件的1-1聚合、1-多聚合、1-多关联、继承聚合类型对应的源属性访问策略需要选择nc.md.model.access.BodyOfAggVOAccessor,源属性所在实体访问器类型需要设置为AggVO类型。关联引用在界面上会以参照形式显示,关联引用的源属性需要选择参照名称(一般会自动显示默认参照)。目前比较常用的关系是:聚合、关联和业务接口实现。发布元数据组件必须保存后才能发布发布时必须启动中间件,发布到当前开发环境设置的数据库中。发布时必须先发布被依赖的组件,组件间如果有双向依赖,先去掉一方依赖,发布后再建立依赖,然后发布另一个。导出java源文件V55的导出代码是Supervo,如果组件的代码风格是NC传统样式(默认),则会生成AggVO。必须启动中间件才能导出,导出前确保最新的组件被发布了。也可以在功能建模集成开发工具中与UI代码一起生成。导出建库脚本业务组件必须发布后才能导出脚本,导出时必须启动中间件。生成Sql脚本并执行时,会在当前Eclipse设置的数据源中建立数据库表结构。对于聚合关系,生成的表结构是采用了NC的传统方式,在子表中生成外键指向所关联的主表记录。在主表的聚合属性中设置的字段名称将作为生成的子表外键字段名称。由于当前UI工厂的历史原因,要求主表主键必须与子表外键名称相同,因此,主实体中聚合属性的字段名称必须与该实体的主键字段名称完全相同。元数据编程接口-元数据查询元数据编程接口-元数据查询MDBaseQueryFacade提供元数据基本的一些查询,如查询模块、组件、实体、值对象、属性等,前后台均可调用。支持前台缓存功能,有效减少远程调用。前台缓存能很好的解决元数据加载的效率问题,但是如果开发人员在开发环境需要频繁的修改元数据,则必须重启JStarter才能使得修改生效,为避免此问题,可以在JStarter的启动参数里增加参数,在开发时临时关闭前台缓存功能。-Dnc.md.detectEachTime=true元数据编程接口-元数据查询nc.md.MDQueryService后台查询,前台请不要调用前台全部使用MDBaseQueryFacade。MDQueryService服务为元数据自身查询服务的统一入口,通过此入口类可以请求不同的查询服务,在后台,如果是一些简单查询,比如通过名称,则优先使用nc.md.MDBaseQueryFacade提供的查询方法练习组件:报销单、付款单报销单(expense)报销单主信息(expense):主键(pk_expense)、所属公司(corp)、部门(dept)、报销人(expensepsn)、制单人(opepsn)、报销单号(billno)、审核人(auditpsn)、审核批语(auditmsg)、审核日期(auditdate)、单据类型(billtype)、业务类型(busitype)、单据状态(billstate)、报销明细(expenseitems)报销单明细(expenseitem):主键(pk_items)、报销类别(expensetype)、报销金额(mny)、税额(taxmny)、备注信息(meno)报销类别枚举(exptype):差旅费、招待费、交通费。。。。。。付款单(pay)付款单主信息(payment):主键(pk_payment)、付款公司(paycorp)、报销人所属公司(excorp)、报销人所属部门(exdept)、报销人(expsn)、单据号(billno)、审核人(auditpsn)、审核日期(auditdate)、审核批语(auditmsg)、单据类型(billtype)、业务类型(busitype)、单据状态(billstate)、付款明细(payitems)付款单明细(payitem):主键(pk_items)、支付报销类别(exptype)、申请金额(reqmny)、实际金额(realmny)、备注(meno)

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

NCV55元数据建模.ppt

您可能关注的文档

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信