数据交换管理导入常见问题1、引言数据交换管理可以实现外部系统和NCC系统的对接,方便快速的同步数据,支持将外系统的基本档案和业务数据发送到NCC系统中,并进行相关的业务操作,如审批、弃审,也可以通过发送XML格式的查询条件导出NCC系统的数据(需业务插件支持),导出的数据可以附着在回执文件中,也可以直接向外部系统回发HTTP请求。2、问题描述及解决方案总结了一些数据交换管理的常见知识点,以及在加载XML文件过程中的常见问题如下:2.1检验文件管理节点,单据类型选择“自定义档案”,提示:请检查文件是否存在。解决方案:预置的自定义档案的检验文件层级有问题,修改数据库检验文件的层级解决。select*fromxi_billdefinewherebilltype='defdoc';updatexi_billdefinesetaamlevel=0wherebilltype='defdoc';commit;2.2导入档案或者打开校验文件管理,提示Nosuchfieldnc.vo.pfxx.scheme.BillDefination.bill解决方案:这个提示的意思是校验文件有问题。导出一个正常的校验文件,重新导入校验文件。导入的时候外部系统选择为空,这样所有的外部系统都会更新校验文件。2.3校验文件管理节点,导入校验文件时提示:请确保导入的校验文件名称和单据类型的名称相同。解决方案:要在校验文件管理节点导入的xml文件名称必须和要导入的单据类型名称一致。2.4导入模板在服务器代码的哪个位置下载?解决方案:nchome\pfxx\demodata文件夹下存放导入模版,不同模块的档案存放在不同文件夹下。此外nchome\pfxx\billdefine文件夹存放校验文件模板。nchome\pfxx\pfxxtemp文件夹存放交换平台日志里的原始文档和翻译后的文档。2.5交换平台日志节点的参数设置,打开“导入过程中记录中间文件”后,导入单据提示“writingfileerror”。解决方案:删除nchome\pfxx\pfxxtemp文件夹下的所有文件和文件夹重试。2.6加载档案提示WritingFileToFileServererror!解决方案:删除nchome\pfxx\pfxxtemp文件夹下的所有文件和文件夹重试。2.7导入外系统档案,但是外系统档案编码和NCC系统档案编码不一致,如何解决?解决方案:设置基础数据对照表解决。在外部信息系统设置里,表体设置需要对照的明细项,设置按编码匹配。如果编码无法翻译,就会根据基础数据对照表匹配。基础数据对照表的组织类型如果选择全局(global),则导入的XML文档头属性orgcode不填值;组织类型选择相应业务单元或者集团,需要在导入的XML文档头属性orgcode设置对应业务单元或集团编码,这样设置交换平台才会读取到对照表的信息。2.8如何导入基础数据对照表?解决方案:自建excel文档,填写四列:外系统值,外部系统描述,基础数据编码,基础数据名称。分别填写外部系统的编码,外部系统档案描述,NCC系统里基础数据的编码,NCC系统里基础数据的名称。不需要设置列头文字,外系统值不能重复,基础数据编码可以重复。2.9基础数据对照表提示错误:(reading'hasOwnProperty')解决方案:在开发配置-应用注册节点,为对应的节点配置下默认模版。2.10在手动加载界面节点,找不到XML文件。解决方案:在数据文件目录选择文件,下方表体会出现数据文件名,再发送即可。有的老版本选择的是文件夹,选择后xml文件自动显示在下方表体。2.11加载档案,提示:不是一个合法的发送方,请到【外系统信息设置】里注册响应的外部系统。解决方案:xml中的sender需要与外部系统编码保持一致。2.12客户档案定义了编码规则,但是导入优先取xml文件上的编码,能不能优先按编码规则生成编码?解决方案:xml中不填写具体的编码,而是填写cust_temp_code,就会调用后编码规则。2.13加载凭证,凭证号能否自动按照目前的流水自动添加。解决方案:导入的xml的凭证号字段0的值给置成0,则系统会按照凭证号规则自动生成。2.14加载凭证,提示摘要字段字符过长。解决方案:在检验文件管理节点,打开对应的凭证单据,打开的时候选择外部信息系统和不选择外部系统两种校验文件都进行设置。将其中摘要字段的长度都扩展长度,注意不要超过300。2.15加载收款单或者付款单,提示nc.bs.arap.plugin.ArapExpPfxxPlugin,异常信息:null解决方案:检查收付单据表头pk_tradetype交易类型编码、表体往来对象objtype是否填写。可以校验文件管理,对单据这两个字段设置下必输项。要注意的是导入其他类型的单据或者档案,如果提示类似报错,也是首先检查xml文件里是否存在关键字段未填写。2.16加载单据导入,如果某个字段设置的是按PK对照翻译,但是传输到NCC的数据是编码是什么原因?解决方案:数据交换管理-外部信息系统设置节点,如果是设置按照PK翻译,则导入的xml文件里档案需要填写PK。如果要按照编码翻译,则在数据交换管理-外部信息系统设置里把档案设置成按编码翻译,导入的xml对应的字段也要是编码。如果默认设置按照PK对照翻译,但是档案专门设置了按编码翻译,则xml文档里应该填写编码。2.17数据交换平台传输应收单信息报错:单据翻译转换错误:根据基础档案[组织_部门]无法翻译[部门]字段,待翻译值:01500301,翻译方式:自定义翻译器nc.bs.arap.pfxx.DeptTranslator。解决方案:部门是组织级档案,在数据交换管理-检验文件管理节点,打开对应的单据,修改对应的字段的翻译器,设置成指定组织翻译器003,变量设置pk_org。2.18新增自定义档案无法从外系统通过xml导入NC。解决方案:在检验文件管理节点,把报错的自定义档案的翻译器可以设置成简单参照翻译器。一般情况下,如果是组织级的自定义档案,则设置指定组织档案翻译器,翻译器下一行的参数设置pk_org,如果是集团级自定义档案,则设置当前集团翻译器,参数设置pk_group。2.19收款单的一个字段“收款业务类型”,参照的“收付款类型”,应该选择哪个翻译器?解决方案:在数据交换管理-检验文件管理节点,未收款单的收款业务类型设置翻译器,翻译器选择简单参照翻译器。2.20客户或者供应商导入报错:下列字段值已存在,不允许重复[客商编码:XXXXXXX]。解决方案:客户或者供应商导入,有三个表都要查一下编码不能重复:客户表,供应商表,客商表。因为导入时不但会写入客户表或供应商表,还会在客商表生成同样编码的客商。2.21如何将交换平台日志节点以表单形式导出。解决方案:这个节点没有相关的预置报表,可以自行设置一个,取的数据库xx_xlog表的数据。