




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基本档案事件通知机制技术红皮书NC-UAP 5.0用友NC-UAP2019-11-221第 页目 录第一章前言1第二章接口介绍21.IBDOperate接口22.事件类型23.IBDOperateContextObject3第三章注册表主要信息介绍41.表名42.各主要字段介绍4第四章各基本档案可支持的事件说明51.部门档案52.结算中心53.存货管理档案64.存货基本档案75.仓库档案76.人员档案87.人员分类98.定义自定义项99.自定义项档案定义910.销售组织1011.采购组织1012.产品线档案1113.计量档案1214.常用摘要1215.发运方式1316.税目税率1317.请购业务对照1318.责任中心1419.结算方式1420.币种1521.存货分类1522.成套件1623.物料生产档案1624.会计科目1625.会计主体1726.地区分类1727.地点档案1828.客商基本档案1829.客商管理档案1830.结算中心1931.结算单位2032.会计期间方案2033.会计期间2134.项目类型2135.项目基本档案2236.开户银行2237.账户档案2238.内部账户2339.现金流量项目23第 24 页第一章 前言从V30开始NC的大部分基本档案引入了类似Swing的事件机制,在档案的增、删、改、封存操作时会产生相应的事件。如果需要在这些操作发生前或发生后增加一些业务处理,可以把这些业务处理逻辑封装成对相应事件的监听类,注册到系统中。注册的信息保存在表bd_interfaceexec中。所有的监听类都必须实现接口IBDOperate。第二章 接口介绍1. IBDOperate接口IBDOperate接口有两个方法,分别为beforeOperate和afterOperate,其声明如下所示:public void beforeOperate(String fun_code, int opType, String pk1,String pk2, Object bd_docData) throws BusinessException;public void afterOperate(String fun_code, int opType,String pk1,String pk2, Object bd_docData) throws BusinessException;这两个方法分别在监听的事件开始前和结束后调用,其参数基本一样。参数含义见表2-1。参数参数含义Fun_code档案结点号,表明当前事件是属于哪个档案。OpType当前的事件类型,即是增加或是删除或者其他等等。Pk1当前操作的档案的主键。Pk2大部分情况下无意义。仅在特殊操作,比如档案新增下级等操作才有意义。需要参看具体档案的文档。Bd_docData不同情况下意义不同。需要参看具体的档案的文档。表2-12. 事件类型对于事件类型(即参数opType的取值),IBDOperate接口中定义了一些常见的事件。见表2-2。常量名取值含义BDOPERATION_SEAL1 档案封存BDOPERATION_STOP2 档案停用BDOPERATION_ALTER3 档案属性被修改BDOPERATION_COMBINE4档案合并BDOPERATION_ADDSUB5 增加该档案下级BDOPERATION_DEL6 档案删除BDOPERATION_INSERT7 档案新增BDOPERATION_COPY8 档案复制BDOPERATION_BEGIN_USE12档案启用BDOPERATION_REF13档案引用BDOPERATION_DELLOG14档案删除日志表2-2这里列举出来的是常见的一些事件类型,对于个别的档案可能会有它特有的事件类型定义,这也需要查看各个档案的具体文档。参数bd_docData 用来解决在很多的事件中需要比当前操作的档案主键更多的信息的问题。其具体类型可能随不同的档案的不同事件而不同。3. IBDOperateContextObjectV31开始对于修改(BDOPERATION_ALTER)事件,bd_docData都统一为IBDOperateContextObject。 其定义如下:public interface IBDOperateContextObjectpublic abstract IBDBaseDoc getBaseVO();public abstract Object getContextInfo();public abstract Object getNewVO();public abstract Object getOldVO();这个接口里getNewVO和getOldVO分别返回的是修改前后修改后的档案VO。如果是新增或删除操作则getOldVO返回null.方法getContextInfo是一个用来应付扩展的属性,一般为null, 实际使用中的具体含义要看相应档案的文档。 getBaseVO是为满足总账辅助核算同步更新档案的名称编码而增加的。IBDBaseDoc有三个方法分别返回档案修改后的名称编码和主键。同样这个方法在新增和删除没有意义。一般来说,监听处理程序仅需要getNewVO和getOldVO返回的两个VO就可以完成大部分的业务逻辑了。第三章 注册表主要信息介绍1. 表名bd_interfaceexec2. 各主要字段介绍字段名描述Funcode为节点号, 如果要监听所有的档案则可以注册为”ALL”InterfaceclassnameIBDOperate的实现类名。Opertype操作类型第四章 各基本档案可支持的事件说明1. 部门档案部门档案节点号10080404VO类nc.vo.bd.b04.DeptdocVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataDeptdocVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2nullbd_docDatanull2. 结算中心结算中心节点号10081618VO类nc.vo.bd.settle.SettlecenterVO新增opTypeBDOPERATION_INSERT(7)pk1新增档案的PK。 beforeOperate方法中为nullpk2nullbd_docDataSettlecenterVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例 删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDataSettlecenterVO的实例 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例 3. 存货管理档案存货管理档案节点号10081208VO类nc.vo.bd.invdoc.InvbasdocVO或者nc.vo.bd.invdoc.ConvertVO或者nc.vo.bd.invdoc.InvmandocVO或者nc.vo.bd.invdoc.InvreplVO或者nc.vo.bd.invdoc.InvbindleVO新增opTypeBDOPERATION_INSERT(7)pk1新增档案的PK。 beforeOperate方法中为nullpk2nullbd_docData如果存货管理档案表头则是InvmandocVO的实例 ;如果是存货基本档案表头,则是InvbasdocVO;如果是替换件信息,则是InvreplVO的实例;如果是捆绑件信息,则是InvbindleVO实例;如果是计量信息子表,则是ConvertVO实例修改opTypeBDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例 删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docData如果存货管理档案表头则是InvmandocVO的实例 ;如果是替换件信息,则是InvreplVO的实例;如果是捆绑件信息,则是InvbindleVO实例;如果是存货基本档案表头,则是InvbasdocVO的实例;如果是计量信息子表,则是ConvertVO实例封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例 4. 存货基本档案存货基本档案节点号10081206VO类nc.vo.bd.invdoc.InvbasdocVOnc.vo.bd.invdoc.ConvertVO新增opTypeBDOPERATION_INSERT(7)pk1新增档案的PK。 beforeOperate方法中为nullpk2nullbd_docData如果是存货基本档案表头,则是InvbasdocVO的实例;如果是计量信息子表,则是ConvertVO实例修改opTypeBDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例 删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docData如果是存货基本档案表头,则是InvbasdocVO的实例;如果是计量信息子表,则是ConvertVO实例5. 仓库档案仓库档案节点号10081002VO类nc.vo.bd.warehouseinfo.StordocVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataStordocVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2nullbd_docDatanull6. 人员档案人员档案节点号10080604VO类nc.vo.bd.b06.PsndocVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataPsndocVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 其getContextInfo()方法返回的是一个实现了接口IBDBaseDoc,IclientInfo的实例。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docData被删除档案的vo封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2被封存档案的PKbd_docDataIBDOperateContextObject的实例7. 人员分类人员分类节点号10080602VO类nc.vo.bd.b05.PsnclVO封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2被封存档案的PKbd_docData被封存的人员分类VO8. 定义自定义项定义自定义项节点号0080202VO类nc.vo.bd.defref.DefdefVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataDefdefVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 9. 自定义项档案定义自定义项档案定义节点号10080206VO类nc.vo.bd.defref.DefdoclistVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataDefdoclistVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 10. 销售组织销售组织节点号10080408VO类nc.vo.bd.structure.SalestruVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataSalestruVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2被封存档案的PKbd_docDataIBDOperateContextObject的实例11. 采购组织采购组织节点号10080406VO类nc.vo.bd.structure.PurorgVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataPurorgVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2被封存档案的PKbd_docDataIBDOperateContextObject的实例12. 产品线档案产品线档案节点号10081201VO类nc.vo.bd.invdoc.ProdlineVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataProdlineVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2被封存档案的PKbd_docDataIBDOperateContextObject的实例13. 计量档案计量档案节点号10081204VO类nc.vo.bd.invdoc.MeasdocVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataMeasdocVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 14. 常用摘要常用摘要节点号10081808VO类nc.vo.bd.financeaccount.ComabstrVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataComabstrVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 15. 发运方式发运方式节点号10082002VO类nc.vo.bd.operationinfo.SendtypeVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataSendtypeVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 16. 税目税率税目税率节点号10082006VO类nc.vo.bd.operationinfo.TaxitemsVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataTaxitemsVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 17. 请购业务对照请购业务对照节点号10082010VO类nc.vo.bd.operationinfo.PrayvsbusiVO修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。18. 责任中心责任中心节点号10082202VO类nc.vo.bd.manageaccountinfo.RescenterVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataRescenterVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 19. 结算方式结算方式节点号10081606VO类nc.vo.bd.balanceinfo.BalatypeVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataBalatypeVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 20. 币种币种节点号100402VO类nc.vo.bd.basedata.CurrtypeVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataCurrtypeVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 21. 存货分类存货分类节点号10081202VO类nc.vo.bd.b14.InvclVO修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDatanull 22. 成套件成套件节点号10083004VO类nc.vo.bd.b46.SetpartSuperVO删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDataSetpartSuperVO的实例23. 物料生产档案物料生产档案节点号10081210VO类nc.vo.bd.b431.ProduceVO修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2修改后档案VO的PKbd_docDataIBDOperateContextObject的实例 。24. 会计科目会计科目节点号10081802VO类nc.vo.bd.b02.AccsubjVO停用opTypeBDOPERATION_STOP(2)pk1Yearpk2Periodbd_docDataAccsubjVO的Vector修改(表外科目属性)opTypeBDOPERATION_ALTER(3)pk1科目PK pk2nullbd_docDataBDOperateContextObject25. 会计主体会计主体节点号10081802VO类nc.vo.bd.b54.GlorgbookVO总帐启用opTypeBDOPERATION_BEGIN_USE(12)pk1主体账簿vo的pkpk2nullbd_docData主体账簿vo固定资产启用opTypeBDOPERATION_FA_BEGIN_USE(888)pk1主体账簿vo的pkpk2nullbd_docData主体账簿vo的封存opTypeBDOPERATION_SEAL(1)pk1主体账簿vo的pkpk2nullbd_docData主体账簿vo取消封存opTypeBDOPERATION_CANCEL_SEAL(13)pk1主体账簿vo的pkpk2nullbd_docData主体账簿vo切换账簿opTypeBTN_VO_SWITCH_GLORGBOOK (206)pk1报告账簿vo的pkpk2主账簿vo的pkbd_docData主体vo和主体账簿vo的聚合vo26. 地区分类地区分类节点号10080802VO类nc.vo.bd.b07.AreaclVO新增无修改opTypeIBDOperate.BDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例,getContextInfo返回IBDBaseDoc类型的对象 删除无27. 地点档案地点档案节点号10080803VO类nc.vo.bd.b202.AddressVO新增无修改opTypeIBDOperate.BDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例,getContextInfo返回IBDBaseDoc类型的对象删除无28. 客商基本档案客商基本档案节点号10080804VO类nc.vo.bd.b08.CustBasVO新增修改opTypeBDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例,getContextInfo返回IBDBaseDoc类型的对象删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2创建该客商的公司主键,集团为0001bd_docDatanull封存无29. 客商管理档案客商管理档案节点号10080806VO类nc.vo.bd.b08.CustBasVO新增无修改由于客商管理档案由基本信息(基本信息表)和管理信息(管理信息表),因此分两步进行。修改保存管理信息fun_code10080806opTypeBDOPERATION_ALTER(3)pk1被修改客商档案基本信息表主键PK。 pk2管理档案所在公司的主键bd_docDataIBDOperateContextObject的实例,vo类型为nc.vo.bd.b09.CustManVO,getContextInfo返回null修改保存基本信息fun_code10080804opTypeBDOPERATION_ALTER(3)pk1被修改客商基本信息表的PK。pk2nullbd_docDataIBDOperateContextObject的实例,vo类型为nc.vo.bd.b08.CustBasVOgetContextInfo返回IBDBaseDoc类型的对象删除opTypeBDOPERATION_DEL(6)pk1被删除客商基本信息表的PK。 pk2管理档案所在公司的主键bd_docDatanull封存无30. 结算中心结算中心节点号10081618VO类nc.vo.bd.settle.SettlecenterVO新增opTypeBDOPERATION_INSERT(7)pk1新增档案的PK。 beforeOperate方法中为nullpk2nullbd_docDataSettlecenterVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例,getContextInfo返回IBDBaseDoc类型的对象删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDataSettlecenterVO的实例 封存opTypeBDOPERATION_SEAL(1)pk1被封存档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例,getContextInfo返回null31. 结算单位结算单位节点号10081601VO类nc.vo.bd.b203.SettleunitHeaderVO新增opTypeBDOPERATION_INSERT(7)pk1新增档案的PK。 beforeOperate方法中为nullpk2nullbd_docDataSettleunitHeaderVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1被修改档案的PK。 pk2nullbd_docDataIBDOperateContextObject的实例,getContextInfo返回IBDBaseDoc类型的对象删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docDataSettleunitHeaderVO的实例 32. 会计期间方案会计期间方案节点号100403VO类nc.vo.bd.period.AccperiodschemeVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataAccperiodschemeVO的实例 删除opTypeBDOPERATION_DEL(6)pk1被删除档案的PK。 pk2nullbd_docData被删除档案的vo33. 会计期间会计期间节点号100404VO类nc.vo.bd.period.AccperiodVO新增opTypeBDOPERATION_INSERT(7)pk1nullpk2nullbd_docDataAccperiodVO的实例 修改opTypeBDOPERATION_ALTER(3)pk1修改前档案VO的PK pk2bd_docDataAccperiodVO的实例34. 项目类型项目类型节点号10081402VO类nc.vo.bd.period.Accperi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论