|
问题现象:在用友8.52erp系统中用友U8版本号:U8.52软件的供应链产品线库存管理模块出现如下问题:盘点单的盘点数量和实际的账面数量不符。例如:02仓库的存货‘202214’,批次为‘20030602’,实际应该剩余‘24’,但是盘点单的数量为‘50’。经察看数据,该存货rdrecords中期初结存为两笔,一笔为期初库存数量‘50’,另一笔为用友U850ERP系统调整工具调整的数据为‘-26’,但是批次主表中仅有一条期初库存为‘50’的对应记录,缺少调整的记录。造成盘点数与实际库存账面数不符。客户用的是出库跟踪入库,批次管理。请帮忙解答!
原因分析:经过跟踪发现,做盘点单进行盘库时,后台程序会从rdrecord(s)、inventory、mainbatch、等相关表中取数。由于存货是出库跟踪入库并且有批次管理,所以出库时在rdrecords表中的cvouchcode字段会写入对应入库单子表标识(即对应入库单的autoid号)。由于升级过程中,库存期初余额有一些被调整为负数量的记录(写入到rdrecords表中的iquantity字段,例:-26),此记录相当于出库,但对应的cvouchcode字段却没有对应的入库单子表标识,因此造成盘点错误。
解决方案:在用友erp 系统版本U8.52软件中将出库记录写入对应的入库单子表标识,请执行如下脚本:(执行前请做好备份)updaterdrecordssetcvouchcode=a.autoidfromrdrecordjoinrdrecordsonrdrecord.id=rdrecords.idjoininventoryonrdrecords.cinvcode=inventory.cinvcodejoin(selectcwhcode,rdrecords.cInvCode,cbatch,rdrecords.autoidfromrdrecordjoinrdrecordsonrdrecord.id=rdrecords.idjoininventoryonrdrecords.cinvcode=inventory.cinvcodewherebTrack=1andcvouchtype='34'andcbustypeisnotnullandiquantity>0)aonrdrecord.cWhCode=a.cwhcodeandrdrecords.cInvCode=a.cInvCodeandrdrecords.cbatch=a.cbatchwherebTrack=1andcvouchtype='34'andcbustypeisnullandiquantity。
|
|