NC65开发省区培训,简单整理

来源:互联网 发布:淘宝装修市场怎么进 编辑:程序博客网 时间:2024/06/06 15:40

  1. 元数据的修改

    1. 找到元数据文件(通过数据字典查找)

    2. 修改元数据文件并保存

    3. 管理员登录,通过“元数据管理”进行升级元数据。

注意:修改标准产品的元数据后最好不要直接发布元数据,因为发布元数据操作可能会连同与该元数据有关联关系的元数据一起发布,元数据的版本信息可能会发生改变,造成联查失败等原因

  1. 配置文件解释

    <beanid="context"class="nc.vo.uif2.LoginContext"></bean>

通过context获取登录的用户,单据类型等等信息。

  1. 按钮添加

    1. 找到单据对应的配置文件。

    2. 在配置文件中配置新增按钮<bean id=”XxxAction”class=”nc.ui.hrpe.action.XxxAction”></bean>标签的配置,该标签的属性idclass必不可少,因为这是Spring会根据这两个属性去加载类。

    3. 创建nc.ui.hrpe.action.XxxAction类,继承批处理类BatchProcessAction

    4. <bean></bean>标签可能会用到单据信息,那么可以给注入表单和单据控件的bean

      <beanid="combinePriceAction"class="nc.ui.pu.m23.action.CombinePrintUIAction">

      <propertyname="model"ref="manageAppModel"/>

      <propertyname="billForm"ref="billFormEditor"/>

      </bean>

注意:新建Action类最好不要直接继承NCAction。如果继承了NCAction,那么要在setModel方法里增加一句:this.model.addEventListener(this);否则isActionEnable方法不起作用,也就是说不能根据单据状态或者其他条件控制按钮是否可用。

 

  1. 尽量减少前端类(ActionHandle)中处理业务逻辑,最好放到后台。

  2. 接口开发

一定要使用事务性接口(tx=”CMT”),事务结束空个自动清理临时表数据。不会出现数据层叠问题。

<?xml version="1.0" encoding='gb2312'?>

<modulename="hrtrn">

 <public>

   <componentremote="true"singleton="true" tx="CMT">

       <interface>nc.itf.hrtrn.ISendToBudget</interface>

      <implementation>nc.impl.hrtrn.SendToBudgetImpl

</implementation>

   </component>

 </public>

</module>

  1. 日志处理

    1. 首先要在SysConfig中配置日志,日志级别有alldebugerrorinfo等等。

    2. 代码中记录日志写法

      Logger.init(“mylog”);///参数别名

      Logger.info(Objectobj);//Object类型的日志内容

  2. 新开发单据

    新开发单据功能注册节点号和模块编号第三位固定为“J”,这样做可以避开授权问题,新开发单据要加索引。数据量特别大是,尽量用单表头分页实现。

  3. 审批流程图片转换

    IWorkflowDefine接口

workflowdefine.toPNGImage(billId,billType,IApproveflowConst.WORKFLOW_TYPE_APPROVE);

  1. 后台预警

publicclassPartapplyAlertPluginimplements IBackgroundWorkPlugin {

 @Override

 public PreAlertObject executeTask(BgWorkingContextarg0)

           throws BusinessException {

           PreAlertObject retObj = newPreAlertObject();

retObj.setReturnType(PreAlertReturnType.RETURNMESSAGE)

retObj.setReturnObj(retStr.toString());

retObj.setReturnType(PreAlertReturnType.RETURNNOTHING);

      return retObj;

 }

在预警消息类中不要处理业务,减少数据库读写操作,涉及到数据处理尽量放到后台,可以写在接口中,在接口中处理复杂业务,返回结果。否则可能会造成宕机问题。 

原创粉丝点击