I直接答案
结论很直接:仓库本身可以删除,但删除按钮能不能点动,看的不是仓库的名字,而是这个仓库底下还压着多少商品的库存记录。系统在执行删除时会去核查该仓库下所有商品的库存状态,只要还有任意一个商品在这个仓库里存在库存数据(哪怕数量是 0 的记录),删除动作就会被拦下来。所以真正要做的不是「怎么删仓库」,而是「怎么把仓库下的库存清空」。
第二个关键点是:默认仓库不能直接删。每个商品都有一个默认仓库,如果一个商品把这个仓库当作默认仓库,那这个仓库就得先被换掉。操作方向是到商品列表里,把商品的默认仓库改成另一个仓库,改完之后这个仓库对商品来说就不再是默认归属了。另外,回收站里的商品同样会被系统算进来,所以还得先处理回收站,把需要清理的商品恢复成正常状态,再按同样的路子清库存。
第三点容易被忽略:库存是否「清零」,看的是可售和实际两个数是否都归零,而不是只看实际库存。如果有订单挂着待出库,实际库存还没被扣走,这时候直接去盘点会把数字做错。正确顺序是先把待出库订单处理掉,让可售和实际变成相等,再把剩余库存盘点成 0,最后才回到库存列表删掉这条商品库存记录,仓库才能被删除。
II操作问答
系统到底怎么判定「这个仓库能不能删」
系统不是看你点了多少次删除,而是看这个仓库下挂着的商品库存记录是否为空白。只要还有一个商品在这个仓库里留着库存数据,删除就会失败——哪怕那条记录的库存数量写着 0,它仍然算一条记录,仍然挡着删除。
所以判定链条是这样的:仓库被商品引用(包括默认仓库引用和库存记录引用)→ 不能删;商品的默认仓库指向它 → 不能删;回收站里的商品也算引用 → 不能删。这三条都得清掉,删除入口才会真正生效。
III操作问答
照着做:把仓库删掉的具体步骤
第一步,处理默认仓库。进商品列表,找到那些默认仓库是这个仓库的商品,逐个把默认仓库改成别的仓库。别漏掉,改一个算一个。
第二步,清库存。到库存状况里查这个仓库下每个商品的可售和实际数量。如果可售小于实际,说明还有订单没出库,先去订单的待出库统计里把对应订单处理完,让两个数对上;然后进库存盘点,把该商品的库存盘点为 0。反复做,直到这个仓库下所有商品都可售 0、实际 0。
第三步,删记录。库存变 0 之后,还要在库存列表里把这条商品的库存记录删掉,不然记录还在,仓库照样删不了。
第四步,处理回收站。先到商品回收站把需要清理的商品恢复成正常商品,再按上面的方式清掉它们的库存,否则回收站里的商品会继续把仓库「锁住」。
第五步,回到库存的仓库管理页面,删除仓库。
IV操作问答
两种最容易配错的情形,配错了会看到什么
第一种:以为库存数量是 0 就能删。实际上系统认的是「有没有这条记录」,不是「记录里的数字是不是 0」。所以你会看到库存列表里明明显示 0,删除仓库时依然提示不能删——原因是那条库存记录还挂在那里,得手动删掉记录本身。
第二种:没管待出库订单就直接盘点。可售和实际不相等时,盘点会把本来属于未出库订单的货一起做掉,导致订单出库时对不上。你会看到的现象是订单出库报错、或者库存数字反复横跳。正确的做法是先出库,让可售与实际相等,再盘点,顺序不能颠倒。
V操作问答
它跟哪些功能绑在一起
和商品管理联动:商品的默认仓库归属不改,仓库就删不掉。和订单联动:待出库统计直接决定可售与实际能不能对上。和库存盘点联动:盘点是清零的最后一刀,但前提是订单已经处理完。
和回收站联动:回收站商品会被纳入判定,处理顺序必须是先恢复、后清库存。和权限联动:仓库管理和库存删除通常属于库存相关权限,如果操作人看不到这些入口,先确认账号权限是否覆盖到库存模块,别在没权限的账号上反复试。
VII常见问题
被问得最多的几个问题
删仓库本身不保留这个仓库的历史库存视图,所以动手之前建议先把库存状况导出或截图留档。已经被盘点成 0 并删除的库存记录也不会自动还原,后续要重建得重新建仓库、重新录入或通过盘点把数字加回去。
大概率是库存记录本身还在,只是数量变成了 0。系统判定的是这条商品库存记录有没有被删掉,而不是数字是不是 0,所以要在库存列表里把对应的库存记录逐条删除。另外检查一下商品回收站,里面恢复出来的商品也会重新占用这个仓库。
有。普通仓库只要清掉库存记录就能删;默认仓库还多一道,必须先把所有把这个仓库当默认仓库的商品改到别的仓库去,改完之后它才退化成普通仓库,可以按同样的流程删除。
VII继续查
企业微信 · 专属顾问