问题现象:在用友T3财务软件的核算管理模块中删除材料出库单时提示:本张材料出库单已被生产加工成本分配,不允许修改和删除!如需修改,请删除对应的生产加工成本分配表。这个错误从字面上看好像挺容易的,实际上并非这样。
加微咨询技术问题!
复制微信号
原因分析:用友小辣妹仔细分析了一下这个问题,检查了一下生产加工成本分配和产成品成本分配里面确实没有任何单据,而且与客户沟通中发现,确实也没有做过类似的单据,只是单独填写了一下材料出库单,连审核都没有做,记账也没做过。这就比较奇怪了,那就只有可能是数据库问题了。
解决方案:于是用友小辣椒(qq2507786288)打开事件探测器进行跟踪分析,发现主要是收发存子表中有一个字段有数值,看起来应该像是不是成本分配的数量,于是做了一个正常的单据进行了对比,发现还真是,正常做的单据做了生产加工成本分配之后bdistribute字段为1,而iDquantity字段为分配的数量。
为了谨慎起见,先用语句过滤了具体单据的错误。
select bdistribute,iDquantity,* from rdrecords where id=159 and (bdistribute=1 or isnull(iDquantity,0)>0)
发现还真是 iDquantity 字段的问题,于是用SQL语句修改回来。
update rdrecords set idquantity=null where id=159 and (bdistribute=1 or isnull(iDquantity,0)>0)
修改后,再去看这个材料出库单发现可以正常删除了。
但客户又回头找用友小辣椒(qq2507786288)了说用友T3软件中还有其他的材料出库单删除的时候又报同样的错误了,噢,可能前面解决的不完整,还有其他单据没搞定,于是修改语句进行过滤查看。
select bdistribute,iDquantity,* from rdrecords where bdistribute=1 or isnull(iDquantity,0)>0
发现还真有不少单据是这种情况,于是再用SQL语句替换掉。
update rdrecords set idquantity=null where id=159 and (bdistribute=1 or isnull(iDquantity,0)>0)
网友评论