背景
95%上网率提升,库存异常导致无法按期发货,修复主子表库存数据
需求
数据修复步骤
1.修复主库存锁定异常
根据实际的业务场景(订单锁定+包裹锁定+退货单锁定+产品返修锁定)修复锁定
场景1:实际锁定>库存锁定 :库存可用转锁定,如果可用不足,可用库存直接清零,锁定数据和实际锁定保持一致
场景2:实际锁定<库存锁定: 库存锁定转可用
2.修复子库存锁定异常
2.1 修复包裹拣货锁定和子库存锁定详情不一致的场景
以包裹锁定为主:修改子库存锁定详情
2.2 修复子库存锁定详情和库存锁定
根据锁定详情实际锁定修复
场景1:实际锁定>库存锁定 :库存可用转锁定,如果可用不足,可用库存直接清零,锁定数据和实际锁定保持一致
场景2:实际锁定<库存锁定: 库存锁定转可用
3.修改主子库存不一致(当前库存不一致)
以主表为主
3.1 主库存大于子库存
场景1:子库存有记录,如果子库存存在锁定,就找最新处理的库位库存增加可用
场景2:子库存无记录,添加记录,库位如何取建议方案:新建一个特殊库位,然后让客户自己去转移
3.2 主库存小于子库存
场景1:子库存可用足够扣除,直接扣除
场景2:子库存可用不够扣除,有锁定,(业务释放锁定后处理修复)
备注:
1、修复子库存锁定时,如果存在子库存锁定但并无子库存记录,数据不修复,需要手动检查后在处理
2、修复主子库存不一致的数据时,需要考虑如果存在已发货但主表库存未扣除,子表已扣除,那么主表库存要减去已发货数量
3、修复主子库存不一致的数据时,需要考虑如果存在已发货但主表库存已扣除,子表未扣除,那么主表库存要加上已发货数量
4、修复主子库存不一致的数据时,需要考虑如果存在未发货但子表库存已扣除的情况,那么子表需要加上已扣除的数量后再做数据对比
第一步:前提修复
1.修复主库存,可用和锁定为0的数据
2.修复子库存锁定详情有数据 但是子表库位库存记录没有的