zoukankan      html  css  js  c++  java
  • ★★★错误终于抓到了★★★


    我在所有登录界面中加入检测的代码,一旦系统数据不符将提示错误。
    25日下午3点,接到电话说出现数据不符提示。
    我赶去看,数据不符有5条,成品送货量应为0,但现在为1280,全部是最新的订单。
    在1:47到2:03这段时间出现问题。
    把这段操作日志调出来,原来涉及到三个模块,但基础数据模块出错可能性极低,因此先排除。
    剩下综合模块与成品库存模块,由于综合模块刚好有这5条记录的修改、保存、审核的操作,因此我先把注意力放在综合模块中,但查了一个小时没有明显问题。
    最后想先放弃这次的追踪,同时看一看成品库存模块的相关操作,在这段时间里,它的操作涉及界面三个,我看了其中的相关单号,发现一个入库单数量刚好1280,立即就兴奋起来,再对这三个界面认真分析,确定在按单出货中出现问题,再分析其存储过程,最后看到如下代码
      update t1 set CPSHL=t1.CPSHL+@AddorSub*t2.HJSL
          from A11KHDD t1 inner join
          (select distinct GDH,sum(SL) as HJSL from B21CPCK
          where DH=@DH group by GDH) t2
          on t1.GDH=t2.GDH
    它的本意是设置订单的成品出库量为原来数量加上本次出库量,条件是工单号要相等,但注意如果这时订单没有审核,则工单号还没产生,即为空,则这张送货单也不填写工单号,所以……
    将其改为
      update t1 set CPSHL=t1.CPSHL+@AddorSub*t2.HJSL
          from A11KHDD t1 inner join
          (select distinct GDH,sum(SL) as HJSL from B21CPCK
          where DH=@DH group by GDH) t2
          on t1.GDH=t2.GDH and t1.GDH<>''
    即可

    55555三个星期的追踪!

  • 相关阅读:
    Java代码规范
    使用规则执行器替换IF条件判断
    设计模式六大设计原则
    MySQL学习笔记
    LintCode 550 · Top K Frequent Words II
    LeetCode 260. Single Number III
    LeetCode 162. Find Peak Element
    牛客_线段重合问题
    [福州大学2021春软件工程实践|S班]助教总结
    MacOS sublimetext 安装 packagecontrol 失败
  • 原文地址:https://www.cnblogs.com/yzx99/p/81865.html
Copyright © 2011-2022 走看看