1/6用友股份-LE支持服务业务本部产品方案--《外部交换平台导入凭证后出现记账错误的问题》建立日期:2013-10-01修改日期:xxxx-xx-xx文档属性:客户文控编号:LE-DY-CP-2013-08552/6文档控制创建记录适用范围审阅人日期审阅签字所属部门发布范围内部员工伙伴客户发布人姓名所属部门发布时间日期作者所属部门邮件地址版本2013-10-01徐建军产品支持部V1。0版本领域模块备注3/6目录外部交换平台导入凭证后出现记账错误的问题....................................................4一、问题描述............................................................................................................4二、问题分析及解决................................................................................................44/6外部交换平台导入凭证后出现记账错误的问题一、问题描述最近遇到几个项目问题都是通过外部交换平台导入了一些凭证,在后续的记账操作中报错“凭证记账出现错误:更新记数2UPP20021005-000599会计年度2008,会计期间03,科目0001V9100000000049P4,币种00010000000000000001,辅助核算1015V910000000000OD8null”,经过检查发现问题的原因是由于用户操作的时候登录A公司导入B公司的凭证,但是在手动加载界面却没有指定B公司的账簿,因此造成了导入的凭证中pk_corp取的是A公司(这是错误的),但是pk_glorgbook却是B公司的(这是正确的),二、问题分析及解决遇到这种错误时如果不是很确定可以用下面的脚本查询一下是否存在错误数据:SELECT'|->'错误凭证信息,b.glorgbookname,a.YEAR,a.free1,d.forshort,a.NO,'|->'错误明细数据,a.pk_corp,c.unitcode,b.glorgbookcode,a.pk_glorgbook,a.pk_voucherFROMgl_vouchera,bd_glorgbookb,bd_corpc,bd_vouchertypedWHEREa.pk_glorgbook=b.pk_glorgbookANDa.pk_corp=c.pk_corpANDa.pk_vouchertype=d.pk_vouchertype5/6ANDb.glorgbookcodeNOTLIKEc.unitcode||'%'ANDa.dr=0如果确实存在错误数据,用下面的脚本删除:1)执行脚本更改错误凭证:updategl_vouchersetpk_corp=(selectpk_entityorgfrombd_glorgwherepk_glorg=gl_voucher.PK_GLORG)updategl_detailsetpk_corp=(selectpk_entityorgfrombd_glorgwherepk_glorg=gl_detail.PK_GLORG)2)重建科目余额表,然后保存ok。为了防止以后客户出现类似的问题,可要求客户必须登录到当前公司导入当前公司的单据,但是操作方面难免有遗漏,这时也可以在系统中限制一下(只限于5系列的版本),在交换规则定义中找到外部系统对应的gl打开以后在company中增加组织字段“需要与接收方一致”,然后打上补丁:NC-UAP-V5.011-Patch-20080414-00147,重启中间件,清除缓存。6/6这个时候就会校验导入文件中的company字段和手动加载界面的URL地址中的值是否一致。,如果不一致就会报错:“单据翻译转换错误:数据文件主体帐簿信息与接收方给定主体帐簿信息不一致!,或者数据文件中公司与接受公司不一致!”。从而可以控制错误数据的产生。