采购专票参照入库单生单报错解析案例分享用友软件股份有限公司王小朋Thursday,March28,2024案例分享采购专票参照入库单生单报错解析用友软件股份有限公司王小朋Thursday,March28,2024客户问题U890采购管理客户来电采购专用发票参照采购入库单提示:单据转换时发生错误,详细信息为:所选择用于生单的数据已经被别人修改,请重新选择报错截图:单据操作流程:采购发票参照入库单界面,我们看到表头栏目的该入库单出现了两条记录,正常表头信息应该是1条记录才对,那么问题可能出现在此,利用探查器跟踪如下事件探查器跟踪分析:分析SQL语句:找到过滤查询的语句,语法中有个distinct保持唯一的查询,而现在有两条记录出现,那么分析思路就是找这两条记录中肯定有不同的记录,那么对比SQL语句查询的结果:SELECTdistinct''asselcol,(PU_V_RDList.iflowid)asiflowid@@,(PU_V_RDList.cflowname)ascflowname@@,(PU_V_RDList.ccode)ascincode@@,(PU_V_RDList.ddate)asddate,(PU_V_RDList.cvencode)ascvencode@@,(PU_V_RDList.cvenabbname)ascvenabbname_1@@,(PU_V_RDList.cdepcode)ascdepcode@@,(PU_V_RDList.cdepname)ascdepname@@,--(PU_V_RDList.cpersoncode)ascpersoncode@@,(PU_V_RDList.cpersonname)ascpersonname@@,(PU_V_RDList.cmemo)ascpbvmemo@@,(PU_V_RDList.cptcode)ascptcode@@,(PU_V_RDList.cptname)ascptname@@,(PU_V_RDList.crdcode)ascrdcode@@,(PU_V_RDList.crdname)ascrdname@@,(PU_V_RDList.cdefine1)ascdefine1@@,(PU_V_RDList.cdefine2)ascdefine2@@,(PU_V_RDList.cdefine3)ascdefine3@@,(PU_V_RDList.cdefine4)ascdefine4@@,(PU_V_RDList.cdefine5)ascdefine5@@,(PU_V_RDList.cdefine6)ascdefine6@@,(PU_V_RDList.cpaycode)ascpaycode@@,(PU_V_RDList.cpayname)ascpayname@@,(PU_V_RDList.cdefine7)ascdefine7@@,(PU_V_RDList.cdefine8)ascdefine8@@,(PU_V_RDList.cdefine9)ascdefine9@@,(PU_V_RDList.cdefine10)ascdefine10@@,(PU_V_RDList.cdefine11)ascdefine11@@,(PU_V_RDList.cdefine12)ascdefine12@@,(PU_V_RDList.cdefine13)ascdefine13@@,(PU_V_RDList.cdefine14)ascdefine14@@,(PU_V_RDList.cdefine15)ascdefine15@@,(PU_V_RDList.cdefine16)ascdefine16@@,(PU_V_RDList.cexch_name)ascexch_name@@,(PU_V_RDList.iexchrate)ascexchrate@@,bcredit,(PU_V_RDList.ID)asimainid@@,(PU_V_RDList.cARVCode)ascARVCode,(PU_V_RDList.chandler)aschandler,(PU_V_RDList.dveridate)asdveridate,(PU_V_RDList.cvtype)ascvtype,idiscounttaxtype,cvenpuomprotocol,cvenpuomprotocolname,dcreditstart,icreditperiod,dgatheringdatefromPU_V_RDListinnerjoin[pu_cgrkdtocgfp_PAUL0IdMain]on[pu_cgrkdtocgfp_PAUL0IdMain].ccode=PU_V_RDList.ccodeorderbyimainid@@对比SQL语句查询记录对比单据的两条记录,不同的是cpayname,一个是NULL,一个有值,那么再查询视图:PU_V_RDList,PayCondition.cpayname,来自付款条件中的名称。那么付款条件的录入来自采购订单,再联查入库单的上游单据发现:该入库单参照的两张采购订单,一张有付款条件,一张没有付款条件,而订单付款条件的录入不做限制,所以出现如此问题。变通处理方法:先指导用户单张选择参照生单,不全选入库单生单即可,该问题是产品Bug,已经提交网上问题,问题号:201004230210两张采购订单,一张有付款条件,一张没有,同时被参照生成一张入库单,该入库单被参照生成专用发票时,表头参照栏目出现两条记录,全选,生单报错:单据转换时发生错误,详细信息为:所选择用于生单的数据已经被别人修改,请重新选择。后续等待支持网问题解决。日常电话中若再遇到该问题,请大家注意,谢谢!