UAP61培训-案例-课堂案例操作手册-扩展开发_第1页
UAP61培训-案例-课堂案例操作手册-扩展开发_第2页
UAP61培训-案例-课堂案例操作手册-扩展开发_第3页
UAP61培训-案例-课堂案例操作手册-扩展开发_第4页
UAP61培训-案例-课堂案例操作手册-扩展开发_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

-.z.NC-UAP61扩展开发操作手册开发前准备本次培训下面只要做以下几步,如果是新库,后面有详细步骤。a).用集团管理员登录b).按下面路径找到用户节点c.翻开节点后查询,找到dev用户,选中dev点修改。d.修改studio中开发者信息如果是新的工程需要按以下几部操作。a).系统管理员登陆,应用管理平台—>应用资产管理—>开发者管理。添加开发者信息,确定开发层次〔领域级,行业级,本地化级,伙伴级,客户级〕,此层次是开发人员所处的曾是,如果做扩展开发一定是红色局部的一个。b). 建立用户,身份类型为<开发者>,身份选择第一步添加的开发者,生效日期尽量往前,否则studio中关联时可能找不到用户c). Studio中关联添加的研发者,最下面填写密码,与用户密码一致,如果不填写密码,后面发布元数据会有问题。d). 如果是进展行业扩展,需要修改uaphome\ierp\bin中配置文件<industry_config.*ml>内容,,如果不是进展行业扩展,跳过该步骤。内容如下:<"*mlversion="1.0"encoding="UTF-8""><!DOCTYPEpropertiesSYSTEM"java.sun./dtd/properties.dtd"><properties><entrykey="belongNCIndustryCode">行业</entry></properties>该配置文件在加载元数据时会被读取,系统读取会把发布的领域的及该配置文件的行业的元数据元数据信息,该行业信息可以通过下面sql查询selectbi.pk_industry,frombd_industrybiorderbybi.pk_industry把查询出来需要扩展的行业信息,例如下面为局部查询的结果0 综合控股集团 1 流程制造业 101 装备制造把’0’,’1’,’101’替换行业即可。详细扩展步骤实体扩展属性扩展及子实体扩展需求描述:1.客户为了更好的预测报价单可能产生的费用,对报价单界面字段的要求。A).需要在在报价单单据的表头增加标识【是否含费用信息】、【费用金额】等字段,B).表体增加一个新页签【费用信息】。具体步骤:1).翻开【uapMDP】设计器,翻开后的界面如下2).在左边找到自己定义的组件。点击右键,弹出下面的对话框,点击【增量开发实体组件】3).点击后的画面如下:说明:组件所对应的元数据文件,在studio的帮助文档找到,如果不想找的到帮助文档中找可以通过下面的语句查询出来,但还需要自己到home中查找具体的路径,此sql只是查到对应的元数据文件名称。--查组件的名称selectt.ownmodule模块,t.displayname实体名称,bmf文件名,space模块frommd_ponenttwheret.displaynamelike'%报价单%'orderbytsdesc还需要到uaphome\modules\**模块\METADATA的路径下查找元数据模型在METADATA中的具体的位置,在上图查找时使用。4).找到对应的元数据,确定后会在你选择的组件下生成一个元数据模型。5).点击确定后会有如下列图:6).双击该模型,则会在右侧出现7).点击"报价单表头〞,在下面添加属性,属性名称必须以点击添加时以默认字符为结尾:增加的属性见下表:对应编码字段名称类型bcludefee是否含费用信息布尔ntotalfeemny费用总金额数字nfeenote费用说明字符pk_salequotation消费信息源属性Array注意:a).新增属性的访问策略为〞nc.md.model.access.NCBeanAccessor〞。b).属性扩展时,增加的属性必须填写扩展表,此处填写扩展表e*t_table_h_301。消费信息源属性pk_salequotation扩展表一列不填写c).动态属性表示勾上,如下列图8).增加费用信息子实体方法同标准单据子实体(增加属性,组合主实体等)。字段如下:对应编码字段名称类型pk_e*t_b子表主键字符icve*pensepsn报销人参照用户dfeedate费用日期日期de*pensedate报销日期日期ndetailfeemny费用金额数字vfeeaddress地址字符vnote备注字符vbdef1自定义项1字符vbdef2自定义项2字符注意:A).所有属性勾上动态属性B).新增子实体数据访问类型:NCVOC).类名为:,类名需要以所属层次及机构编码或者行业编码结尾,如果不正确会有提示D).新增子实体名称,默认表名此处设置为:e*t_table_b_301,后缀命名同上。显示名称:费用信息E).子实体扩展时每个属性的名称不以后缀结尾,并且每个属性的扩展表不填写9).启动中间件,点右键选择【发布元数据】。10).选中子实体,点击右键生成JAVA源代码11).点右键选择【生成建库脚本并执行】。12).重启客户段,去除缓存,否则生成单据模版时看不到新加的子实体13).生成单据模板a).新增单据模板,新增模板的页签编码需要与标准产品模板编码一样,因标准产品的代码中可能用到页签编码。此处表头增加一个新分组,编码为headE*tTab名称为:费用信息b).新扩展的页签编码使用:bodyE*tTab,页签名称:费用信息,按下列图设置d).新增的模版,需要在增加新的单据模板后需要到【功能节点默认模板设置】节点进展分配,这样在集团初始化时系统会按照资产层次及国家地区的优先级把该模版分配初始化的集团。如下列图:前台扩展说明:基于pubapp提供的扩展方式,入口类为:nc.ui.pubapp.uif2app.ToftPanelAdaptorE*的扩展按钮扩展替换按钮扩展需求描述:界面修改按钮要求A).每个报价单能管理对应的文档,客户要要把卡片界面的刷新按钮替换为【文档管理】按钮,用与单个文档操作〔上传,下载等操作〕。具体步骤:1).增加新的文档管理按钮,继承平台提供的文档管理按钮,重写可用性方法。2).添加配置文件<"*mlversion="1.0"encoding="UTF-8""><!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN//EN""./dtd/spring-beans.dtd"><beans><!--替换按钮配置--> <beanclass="nc.ui.pubapp.plugin.action.ReplaceActionInfo"> <propertyname="actionContainer"ref="*****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="action"ref="****"/> </bean> <!—文档管理按钮--> <beanid="docManageAction"class=""> <propertyname="model"ref="manageAppModel"/> </bean></beans>3).注册扩展配置文件,在功能注册节点注册,非行业扩展的可增加参数名称为:PluginBeanConfigFilePath,也可使用:PluginBeanConfigFilePath_开场后面加字符行业扩展参数名称:PluginBeanConfigFilePath_Industry行业编码_CountryZone本地化编码,实现不同集团不同行业加载不同的行业的扩展配置文件。插入按钮扩展需求描述:界面修改按钮要求B).要求在编辑报价单时能批量选择附件。具体步骤:1).增加按钮:2).添加配置文件<"*mlversion="1.0"encoding="UTF-8""><!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN//EN""./dtd/spring-beans.dtd"><beans><!--替换按钮配置--> <beanclass="nc.ui.pubapp.plugin.action.ReplaceActionInfo"> <propertyname="actionContainer"ref="*****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="action"ref="****"/> </bean> <!—文档管理按钮--> <beanid="docManageAction"class=""> <propertyname="model"ref="manageAppModel"/> </bean><!—插入按钮配置--><beanclass="nc.ui.pubapp.plugin.action.InsertActionInfo"> <propertyname="actionContainer"ref="****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="pos"value="****"/> <propertyname="action"ref="****"/> </bean> <beanid="chooseFileAction"class=""> <propertyname="model"ref="ManageAppModel"/> </bean></beans>3).注册扩展配置文件,注册规则同替换按钮扩展拦截按钮扩展需求描述:界面修改按钮要求C)点击【保存】按钮后,先把数据保存,再把选择的文件上传到效劳器作为报价单的附件。具体步骤:2).添加配置文件<"*mlversion="1.0"encoding="UTF-8""><!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN//EN""./dtd/spring-beans.dtd"><beans><!--替换按钮配置--> <beanclass="nc.ui.pubapp.plugin.action.ReplaceActionInfo"> <propertyname="actionContainer"ref="*****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="action"ref="****"/> </bean> <!—文档管理按钮--> <beanid="docManageAction"class=""> <propertyname="model"ref="manageAppModel"/> </bean><!—插入按钮配置--><beanclass="nc.ui.pubapp.plugin.action.InsertActionInfo"> <propertyname="actionContainer"ref="****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="pos"value="****"/> <propertyname="action"ref="****"/> </bean> <beanid="chooseFileAction"class=""> <propertyname="model"ref="ManageAppModel"/> </bean><!--拦截按钮配置--> <beanclass="nc.ui.pubapp.plugin.action.ActionInterceptorInfo"><propertyname="target"ref="****"/> <propertyname="interceptor"ref="*****"/> </bean> <beanid="interceptorForFile" class=""> <propertyname="billForm"ref="billFormEditor"/> <propertyname="chooseAction"ref="chooseAction"/> </bean></beans>AppUiStateChangeEvent.javaUI状态改变OrgChangedEvent.java组织改变PubAppEvent.java事件基类CardBodyAfterEditEvent.java卡片表体编辑后CardBodyAfterRowEditEvent.java卡片表体行编辑后CardBodyAfterSortEvent.java卡片表体排序后CardBodyBeforeBatchEditEvent.java卡片表体批编辑前CardBodyBeforeEditEvent.java卡片表体编辑前CardBodyBeforeSortEvent.java卡片表体排序前CardBodyMenuActionEvent.java卡片表体菜单点击CardBodyRowChangedEvent.java卡片表体行选择改变CardBodyRowEditEvent.java卡片表体行编辑后CardBodyTabChangedEvent.java卡片表体页签改变CardBodyTotalEvent.java卡片表体汇总计算CardHeadTailAfterEditEvent.java卡片表头表尾编辑后CardHeadTailBeforeEditEvent.java卡片表头表尾编辑前3).注册扩展配置文件,注册规则同替换按钮扩展UI事件扩展需求描述:新增表头属性及页签后客户要求的界面逻辑控制:A).【是否含费用信息】如果选中则:【费用信息】页签及表头的【费用说明】能编辑且【费用信息】页签不能为空;如果取消则清空表头的【费用说明】并且不能编辑,保存时把【费用信息】的填写信息清空。B).表头扩展的【费用总金额】为【费用信息】页签表体的费用金额合计。C).【费用信息】页签的【费用日期】不能早于【报销日期】。具体步骤:1.增加类:a).增加表头编辑后处理事件:b).增加表体编辑前处理事件:c).增加表体编辑后处理事件:d).增加卡片表体合计事件:这些类都实现了接口:2).添加配置文件<"*mlversion="1.0"encoding="UTF-8""><!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN//EN""./dtd/spring-beans.dtd"><beans><!--替换按钮配置--> <beanclass="nc.ui.pubapp.plugin.action.ReplaceActionInfo"> <propertyname="actionContainer"ref="*****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="action"ref="****"/> </bean> <!—文档管理按钮--> <beanid="docManageAction"class=""> <propertyname="model"ref="manageAppModel"/> </bean><!—插入按钮配置--><beanclass="nc.ui.pubapp.plugin.action.InsertActionInfo"> <propertyname="actionContainer"ref="****"/> <propertyname="actionType"value="****"/> <propertyname="target"ref="****"/> <propertyname="pos"value="****"/> <propertyname="action"ref="****"/> </bean> <beanid="chooseFileAction"class=""> <propertyname="model"ref="ManageAppModel"/> </bean><!--拦截按钮配置--> <beanclass="nc.ui.pubapp.plugin.action.ActionInterceptorInfo"><propertyname="target"ref="****"/> <propertyname="interceptor"ref="*****"/> </bean> <beanid="interceptorForFile" class=""> <propertyname="billForm"ref="billFormEditor"/> <propertyname="chooseAction"ref="chooseAction"/> </bean><!--UI事件监听--> <beanid="E*EventHandlerMediator" class="nc.ui.pubapp.uif2app.model.AppEventHandlerMediator"> <propertyname="model"ref="manageAppModel"/> <propertyname="handlerGroup"> <list> <!--表头编辑后事件监听--><beanclass="nc.ui.pubapp.uif2app.event.EventHandlerGroup"><propertyname="event"value="*****"/><propertyname="handler"><beanclass="*****"/></property></bean> <!--表体编辑前事件监听--><beanclass="nc.ui.pubapp.uif2app.event.EventHandlerGroup"><propertyname="event"value="*****"/><propertyname="handler"><beanclass="*****"/></property></bean> <!--表体编辑后事件监听--><beanclass="nc.ui.pubapp.uif2app.event.EventHandlerGroup"><propertyname="event"value="*****"/><propertyname="handler"><beanclass="****"/></property></bean> <!—卡片合计事件监听--><beanclass="nc.ui.pubapp.uif2app.event.EventHandlerGroup"><propertyname="event"value="*****"/><propertyname="handler"><beanclass="*****"/></prope

温馨提示

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

评论

0/150

提交评论