NCV6-业务初始化红皮书[精].docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NCV6-业务初始化红皮书[精]

业务初始化红皮书 NC-UAP 6.0 用友NC-UAP 2011-05-19 目 录 1. 初始化过程 1 2. 初始化事件监听注册 2 3. 接口说明 4 4. FAQ 4 在NC6中,当用户创建了一个新的集团时,该集团并不能做任何业务操作,需要先对该集团进行一下初始化,即初始化集团级的数据(类比5系列的建公司帐),此过程称为业务初始化。在业务初始化的过程中,需要执行集团级数据的预置脚本和执行各业务模块的业务初始化操作。本文对以上过程做详细描述。 初始化过程 以系统管理员的身份登录系统,在系统初始化模块下可以看见业务初始化节点,如下图所示: 图1 亦可通过集团管理界面跳转至此界面: 图2 图1左侧为当前环境建立的集团树,如果该集团未进行过业务初始化操作,则可以进行启用模块操作,否则使用增补模块操作,右侧模块树显示当前集团已安装的模块和当前环境可安装的模块。 左侧树数据来源于集团管理,所有的集团都会显示到这里。右侧的模块树数据来源于NC模块注册表(dap_dapsystem)。 点击启用模块或增补模块,进入初始化界面,如下图所示: 图3 动态企业建模为必选项,当选取与初始化的模块时,可以设置启用时间,在启用日期后登录集团可进行业务操作。按照界面提示操作,直至完成。 初始化事件监听注册 在业务初始化过程中会发出业务初始化事件,各产品组可以通过监听业务初始化事件,来完成本模块的初始化逻辑。 系统初始化会在初始化前和初始化后分别发出相应的事件,并且该事件已经添加到业务插件注册节点。各产品模块可在产品插件注册节点(图4)注册自己的监听(具体请参考业务插件注册红皮书)。 系统初始化发出的事件为BusinessEvent,其中各属性如下: 事件源ID为“createorg”; 初始化前事件类型为IEventType.TYPE_ORGIINITIALIZE_BEFORE 初始化后事件类型为IEventType.TYPE_ORGIINITIALIZE_AFTER 业务对象为CreateOrgInfo,可在该对象中获取初始化的相关信息,如初始化的集团(getPk_org()),本次初始化的模块(getCreatecorpVOs()),是否增补等信息(isAppend())。 由于业务初始化会触发所有监听的响应,如果有哪个监听逻辑有问题抛出异常的话会导致整个初始化过程停滞。因此在各产品模块编写监听的时候,要把自己的代码控制范围做到尽可能精确,可以通过事件中的业务对象,来获取本次初始化的相关信息,通过这些信息来控制监听代码的影响范围,示例代码如下: if(event instanceof BusinessEvent) { BusinessEvent busi = (BusinessEvent)event; //判断是否为集团初始化事件 If(busi. getSourceID().equals(“createorg”)){ //集团初始化事件的userobject为CreateOrgInfo,其中包含和建账相关的信息 CreateOrgInfo info = (CreateOrgInfo)busi.getObject(); //判断是否增补 if(info.isAppend()) { dosomething(); } //获得本次初始化的模块 CreatecorpVO[] ccvos = info. getCreatecorpVOs(); for(CreatecorpVO ccvo: ccvos){ if(ccvo. getFunccode().equals(“xxx”)) dosomething(); } } } 注册组织初始化业务插件如下图所示: 图4 注意:请不要把业务插件注册到集团新增后事件中,因为如果这么做,如果增补产品时将没有机会再已创建集团中添加该产品数据,请将初始化集团的操作都注册到业务初始化事件中。 接口说明 业务初始化对外提供了查询服务,可通过查询接口获得集团所初始化的模块的信息,该查询接口为InitGroupQuery,该接口提供了根据集团主键返回指定集团所有已初始化模块,判断指定集团对指定模块编码是否启用等常用方法,具体请参考接口注释。 FAQ Q1:5系列里注册在./ierp/bin/InitCorp/目录的相应模块的.dat文件是否

文档评论(0)

dart001 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档