← 返回文章列表

WMS上架策略配置与执行逻辑的产品设计详解(附原型Demo演示)

2026-06-11

WMS上架策略:从配置到库位推荐

写在前面

在之前的供应链产品经理课程中,我讲过“WMS的波次策略和上架策略拆解”相关内容。但当时缺少一个足够直观的竞品拆解和动态演示,没办法直接展示上架规则是如何配置、如何命中、如何生效的。

所以有些学员课后反馈:听的时候感觉懂了,知道WMS里有“上架策略”这个功能,但一旦回到真实系统设计,就还是缺少画面感,不知道它到底应该怎么配、怎么跑、怎么推荐库位。

这一次我借助AI,把富勒WMS的上架规则重新拆了一遍,并结合B2C电商仓、三方仓、多仓库、多货主这些常见业务场景,整理出了一套更完整的上架策略配置逻辑。

这篇文章不是单纯介绍某个WMS产品的功能,而是想回答三个问题:

  1. 一个WMS的上架策略,在Web端应该怎么配置?
  2. 当一张上架单进入系统后,系统是如何匹配策略包和策略明细的?
  3. 系统最终推荐某个库位时,背后到底经过了哪些规则判断?

为了方便理解,我也配套做了一个上架策略的原型Demo和不同的上架单是怎么去命中这些策略规则的演示。大家可以先体验在线原型,再结合这篇文章看配置字段和执行逻辑,会更容易把这个模块吃透。

WMS上架策略的原型Demo

得益于AI Agent的快速发展,我后续会把所有复杂的供应链业务知识和业务逻辑,能用AI去做Demo,去做演示,去做图示的,都会去重做一遍,然后放到自己的服务器当中,以便于大家可以在线访问。

https://pmvitamin.com/demo/_SPA_2026-06-08_wms_putaway_strategy_prototype.html

目录

  1. 概述
  2. 上架策略配置指南
  3. 系统执行逻辑
  4. 预设上架规则详解
  5. 筛选条件与限制条件深度解析
  6. 典型业务场景配置示例

概述

WMS上架策略是仓储管理系统的核心功能之一,它决定了货物在入库后应该被存放到哪个具体的库位。一个设计良好的上架策略能够:

上架策略由策略包头信息策略包明细行两部分组成,前者定义策略的基本信息和适用范围,后者包含具体的执行规则和约束条件。

上架策略配置指南

2.1 策略包头信息配置

#### 基础字段说明

字段名称 是否必填 说明 示例
策略名称 策略的业务名称,建议采用"客户-业务类型-描述"的命名规范 Nike - B2C电商默认策略
策略代码 系统内唯一标识,通常用大写字母和连字符 PUTAWAY-NIKE-B2C-DEFAULT
绑定仓库 指定此策略适用的仓库,不同仓库可配置不同策略 华东-01仓
绑定货主 - 可多选,指定适用的货主;留空则为仓库默认策略 Nike, Adidas
描述 - 策略的详细说明,便于后续维护 处理Nike所有B2C业务的标准上架流程

#### 配置要点

  1. 策略代码的唯一性:确保在整个系统中不重复
  2. 货主绑定策略
  1. 策略生效唯一性:同一仓库 + 同一货主在同一时间只应命中一个有效策略包,多货主复用也要遵守这个约束,避免运行时出现策略冲突
  2. 仓库级隔离:不同仓库的策略互不影响,但策略代码建议全局唯一,便于后续排查、接口传输和日志追踪

2.2 策略包明细行配置

策略包明细行是上架策略的核心,定义了具体的执行逻辑。系统按优先级从高到低依次评估每一行,直到找到合适的库位或所有规则都无法匹配。

#### 2.2.1 核心字段说明

字段名称 说明 配置要点
优先级 数字越小优先级越高,系统按此顺序执行规则 建议用10, 20, 30...便于后续插入新规则
筛选条件 决定什么情况下使用此规则 单选模式,确保匹配精准性
上架规则 核心算法,决定如何寻找候选库位 6种预设规则,各有不同适用场景
推荐库区 指定在哪个库区寻找库位 部分规则需要,部分规则会被忽略
固定库位 指定具体的库位编码 仅在某些规则下生效
限制条件 对候选库位的约束和校验 多种组合,确保业务合规性
状态 启用/禁用此规则行 便于测试和灰度发布

#### 2.2.2 字段间的联动关系

不同的上架规则对"推荐库区"和"固定库位"字段有不同的要求:

上架规则 推荐库区 固定库位 说明
1. 推荐指定库区中,合适的库位 必需 禁用 在指定库区内智能选择
2. 推荐空库位 可选 禁用 可限定库区范围;留空时按系统默认存储范围搜索
3. 推荐固定的库位 可选 必需 直接指定目标库位
4. 推荐最近一次上架的库位 禁用 禁用 系统自动查找历史记录
5. 同品集中存放(已占货位优先) 禁用 禁用 在可用存储范围内搜索相同SKU
6. 同品集中存放(空货位优先) 禁用 禁用 基于同品主存放库位,优先寻找相邻或附近空库位

2.3 筛选条件配置

筛选条件采用单选模式,确保每个上架单能精准匹配到对应的处理规则。

#### 可配置的筛选维度

维度 选项 业务含义
订单类型 不限/采购入库/销售退货/调拨入库 区分不同业务场景的处理方式
批次属性 不限/良品/次品/待检 根据商品质量状态分流处理
产品循环级别(ABC) 不限/A类(高频)/B类(中频)/C类(低频) 按商品周转频率优化存储位置
包装级别 不限/托盘/原箱/单件 根据包装规格选择合适的存储方式

#### 筛选逻辑示例

示例规则行配置:
- 订单类型:销售退货
- 批次属性:良品
- 产品循环级别:A类
- 包装级别:不限

此规则仅对"销售退货单中的良品A类商品"生效,
无论其包装级别如何都会匹配此规则。

2.4 限制条件配置

限制条件用于对候选库位进行校验,确保选中的库位满足业务要求。可同时配置多个限制条件。

#### 2.4.1 库位混放限制

限制项 说明 适用场景
不许混放产品 一个库位只能存放一种SKU 贵重商品、易混淆商品
不许混放批次 相同SKU的不同批次不能混放 有效期管理、追溯要求
库位内必需有相同产品 只能补充到已有相同SKU的库位 集中存储策略
必须是空的库位 只能选择完全空闲的库位 特殊商品、独立存储
SKU最多可占用的库位数 限制单个SKU在当前库区的分散程度 防止过度分散、提高拣货效率

#### 2.4.2 库位属性限制

限制项 说明 业务价值
匹配产品周转级别 库位的ABC属性要与商品的ABC属性一致 将快周转商品放在易取位置

#### 2.4.3 空间限制

限制项 说明 校验内容
校验体积 检查库位剩余体积是否足够 防止超容量存储
校验重量 检查库位承重是否足够 防止货架超载
校验长宽高 检查商品尺寸是否适合库位 防止超规格存储

系统执行逻辑

3.1 上架策略执行流程

3.2 策略匹配逻辑

#### 3.2.1 策略包匹配优先级

系统会按以下优先级选择策略包:

  1. 精确匹配:货主+仓库完全匹配的策略
  2. 仓库默认:该仓库的默认策略(货主字段为空)
  3. 系统默认:系统级默认策略

#### 3.2.2 多策略包匹配处理机制

正常情况下,系统应在配置阶段就避免“同一优先级命中多个策略包”。如果因为历史数据、导入数据或版本切换导致多策略包同时匹配,可按以下规则兜底处理:

匹配情况 选择依据
多个精确匹配策略 优先选择明确标记为当前生效版本的策略
多个仓库默认策略 优先选择启用状态且优先级最高的策略
多个系统默认策略 按策略优先级排序,选择优先级最高的策略

容错机制: 多策略包匹配属于配置治理问题,系统应记录预警日志;如果没有任何策略包可用,则将上架任务标记为"待人工处理"。

#### 3.2.3 规则行筛选逻辑

对于策略包中的每一行规则,系统会验证以下条件:

筛选条件匹配逻辑:
IF (规则.订单类型 == "不限" OR 规则.订单类型 == 上架单.订单类型)
AND (规则.批次属性 == "不限" OR 规则.批次属性 == 上架单.批次属性) 
AND (规则.产品ABC == "不限" OR 规则.产品ABC == 商品.循环级别)
AND (规则.包装级别 == "不限" OR 规则.包装级别 == 上架单.包装级别)
THEN 此规则匹配成功

3.3 候选库位合法性校验机制

上架策略中的限制条件不是唯一的判断来源。系统推荐库位时,需要同时叠加两类规则:

  1. 库位档案的底层硬约束:例如库位状态是否正常、是否冻结、是否允许混放产品、是否允许混放批次、库位承重和容积是否足够等。这些约束即使没有在策略明细中勾选,也必须默认参与校验。
  2. 策略明细的明文限制条件:例如本条规则额外要求“必须是空库位”“不许混放批次”“匹配产品周转级别”等。这类限制用于表达当前业务场景下的额外要求。

因此,系统不是“先推荐一个库位,再看能不能上架”,而是在生成候选库位的过程中,就把库位静态属性、库存现状、商品档案、批次属性和策略限制一起纳入过滤。只有同时满足底层硬约束和明文限制条件的库位,才可以被推荐出来。

举个例子:如果某条策略明细没有勾选“不许混放产品”,但候选库位本身在库位档案中配置为“不允许混放产品”,那么该库位仍然不能接收不同SKU。库位自身的配置是底线,策略限制只能让规则更严格,不能绕过库位档案的硬约束。

推荐库位被选中后,系统还应生成库位预占或任务占用记录,避免多个上架任务在高并发场景下同时抢占同一个剩余库容。

预设上架规则详解

4.1 规则分类概述

系统提供了6种预设的上架规则,用户仅允许从这6种预设的规则中选择一条或者多条,大致可分为三大类:

#### 4.1.1 库区导向型规则

这类规则基于库区进行库位分配,适合有明确存储区域规划的场景。

#### 4.1.2 固定分配型规则

适合异常处理、特殊商品或临时存储场景。

#### 4.1.3 智能寻址型规则

这类规则基于历史数据和库存状态进行智能决策,能够优化存储效率。

4.2 各规则详细解析

#### 4.2.1 规则1:推荐指定库区中,合适的库位

适用场景:

执行逻辑:

  1. 获取指定库区内所有可用库位
  2. 按优化策略排序(通常是距离最近、剩余容量最大)
  3. 逐一校验限制条件
  4. 返回第一个通过校验的库位

配置要点:

典型配置示例:

筛选条件:批次属性=良品,产品ABC=A类
上架规则:推荐指定库区中,合适的库位
推荐库区:PK-01-拣货区
限制条件:校验体积 + 匹配产品周转级别

#### 4.2.2 规则2:推荐空库位

适用场景:

执行逻辑:

  1. 根据推荐库区生成搜索范围;如果未指定库区,则按系统配置的默认存储范围查找
  2. 查询范围内所有满足库位底层硬约束和策略限制条件的空库位
  3. 按库位优先级、库位编码等确定性规则排序
  4. 返回排序后的第一个库位

配置要点:

#### 4.2.3 规则3:推荐固定的库位

适用场景:

执行逻辑:

  1. 直接返回配置的固定库位
  2. 校验该库位是否满足限制条件
  3. 如果校验失败,则此规则失效

配置要点:

#### 4.2.4 规则4:推荐最近一次上架的库位

适用场景:

执行逻辑:

  1. 查询该SKU的上架历史记录
  2. 获取最近一次上架的库位
  3. 检查该库位是否仍有剩余容量
  4. 校验限制条件

业务价值:

#### 4.2.5 规则5:同品集中存放(已占货位优先)

适用场景:

执行逻辑:

  1. 查询仓库内所有存储该SKU的库位
  2. 按剩余容量从小到大排序(优先填满快满的库位)
  3. 逐一校验限制条件
  4. 如果所有已占用库位都不可用,则查找空闲库位

业务价值:

#### 4.2.6 规则6:同品集中存放(空货位优先)

适用场景:

执行逻辑:

  1. 先确定该SKU的主存放库位,可以来自商品档案绑定库位、当前库存最多的库位或最近一次上架库位
  2. 以主存放库位为中心,按仓库库位坐标或库位编码规则寻找相邻/附近的空库位
  3. 对相邻/附近空库位校验库位底层硬约束和策略限制条件
  4. 如果找到满足条件的空库位,则推荐该库位;如果找不到,则本规则失败,进入下一条策略明细

与规则5的区别:

筛选条件与限制条件深度解析

5.1 筛选条件设计原理

#### 5.1.1 为什么采用单选模式?

在设计初期,筛选条件曾考虑支持多选模式,但实际业务中发现多选会带来以下问题:

  1. 匹配歧义:当上架单同时满足多个条件时,难以确定使用哪个规则
  2. 逻辑复杂:多选条件的组合爆炸,难以预测所有可能的匹配情况
  3. 维护困难:规则间可能存在冲突或重叠,问题排查复杂

因此,采用单选模式确保每个上架单都能精准匹配到唯一的处理规则。

#### 5.1.2 各筛选维度的业务含义

订单类型维度:

批次属性维度:

产品循环级别(ABC):

包装级别:

5.2 限制条件组合策略

#### 5.2.1 常见限制条件组合

严格隔离组合:

✓ 不许混放产品
✓ 不许混放批次  
✓ 必须是空的库位
✓ 校验体积
✓ 校验重量

适用于:贵重商品、危险品、易污染商品

集中存储组合:

✓ 库位内必需有相同产品
✓ SKU最多可占用的库位数:3
✓ 校验体积
✓ 匹配产品周转级别

适用于:高频商品、批量拣货商品

质量管控组合:

✓ 不许混放批次
✓ 校验体积
✓ 校验重量

适用于:有保质期的商品、需要批次追溯的商品

#### 5.2.2 限制条件与系统基础数据的联动机制

限制条件的校验需要结合多个系统模块的基础数据,以下详细解析各限制条件的判断逻辑:

混放限制条件的判断逻辑:

限制条件 系统数据来源 判断机制 隐藏规则
不许混放产品 库存明细表 + 库位档案 查询目标库位现有SKU种类 策略勾选后,即使库位允许混放也按不混放校验;库位本身不允许混放时,也会作为底层硬约束生效
不许混放批次 库存明细表 + 批次属性配置 基于"关键批次属性"进行批次对比 相同SKU不同批次的关键属性必须完全一致
库位内必需有相同产品 库存明细表 检查库位是否已存储相同SKU 空库位会被直接排除,只考虑有库存的库位
必须是空的库位 库存明细表 库存数量 = 0 且无预留 忽略库位的混放属性设置,强制要求空位

空间限制条件的计算逻辑:

限制条件 计算公式 数据来源 关键逻辑
校验体积 库位剩余体积 ≥ 商品单位体积 × 上架数量 库位档案 + 商品档案 + 库存明细 库位剩余体积 = 库位总体积 - 已占用体积
校验重量 库位剩余承重 ≥ 商品单位重量 × 上架数量 库位档案 + 商品档案 + 库存明细 库位剩余承重 = 库位最大承重 - 已占用重量
校验长宽高 商品长宽高 ≤ 库位长宽高 库位档案 + 商品包装档案 三个维度必须全部满足,任一维度超出即不符合

业务属性匹配的逻辑:

限制条件 匹配规则 系统配置依赖 特殊处理
匹配产品周转级别 库位.ABC属性 = 商品.循环级别 库位档案ABC设置 + 商品档案循环级别 库位ABC为空时视为通配,可存储任意级别商品
SKU最多可占用的库位数 统计当前SKU在目标库区的库位占用数 库存明细 + 库区配置 按库区维度统计,跨库区不累计

典型业务场景配置示例

6.1 B2C电商仓库配置

#### 场景描述

#### 策略配置

策略名称:B2C电商标准上架策略
策略代码:PUTAWAY-B2C-STANDARD
绑定仓库:华东-01仓
绑定货主:(留空,作为默认策略)

明细行配置:

优先级 筛选条件 上架规则 推荐库区 固定库位 限制条件 业务意图
10 订单类型=销售退货 批次属性=良品 产品ABC=A类 同品集中存放(已占货位优先) - - 校验体积+需有相同产品 A类退货良品优先补充到现有库位
20 订单类型=销售退货 批次属性=良品 产品ABC=B类/C类 推荐指定库区中,合适的库位 ST-A-存储区-A - 校验体积+匹配周转级别 B/C类退货良品存储到存储区
30 批次属性=次品 推荐固定的库位 - QC-01-退货待检区 必须是空的库位 次品隔离存储
40 订单类型=采购入库 产品ABC=A类 推荐指定库区中,合适的库位 PK-01-拣货区 - 校验体积+匹配周转级别 A类新品入拣货区
50 订单类型=采购入库 产品ABC=B类/C类 推荐指定库区中,合适的库位 ST-A-存储区-A - 校验体积+校验重量 B/C类新品入存储区
999 全部=不限 推荐固定的库位 - EXCEPTION-AREA 校验体积 兜底规则:异常处理区

6.2 B2B批发仓库配置

#### 场景描述

#### 策略配置

策略名称:B2B批发标准上架策略
策略代码:PUTAWAY-B2B-WHOLESALE
绑定仓库:华北-02仓
绑定货主:(留空,作为默认策略)

明细行配置:

优先级 筛选条件 上架规则 推荐库区 固定库位 限制条件 业务意图
10 包装级别=托盘 推荐指定库区中,合适的库位 ST-B-高位货架区 - 校验体积+校验重量+SKU库位上限=2 托盘货物存储到高位区,限制分散
20 包装级别=原箱 产品ABC=A类 同品集中存放(空货位优先) - - 校验体积+不许混放批次 A类原箱优先放到同品附近空位,兼顾集中和批次隔离
30 包装级别=原箱 产品ABC=B类/C类 推荐指定库区中,合适的库位 ST-C-标准货架区 - 校验体积+匹配周转级别 B/C类原箱标准存储
40 包装级别=单件 推荐指定库区中,合适的库位 PK-02-散装拣货区 - 校验体积+不许混放产品 散装商品单独存储
999 全部=不限 推荐固定的库位 - TEMP-AREA 校验体积 兜底规则:临时存储区

6.3 冷链仓库配置

#### 场景描述

#### 策略配置

策略名称:冷链仓储上架策略
策略代码:PUTAWAY-COLD-CHAIN
绑定仓库:冷链-01仓
绑定货主:生鲜食品供应商

明细行配置:

优先级 筛选条件 上架规则 推荐库区 固定库位 限制条件 业务意图
10 订单类型=采购入库 批次属性=良品 推荐指定库区中,合适的库位 COLD-A-冷藏区 - 不许混放批次+校验体积+匹配周转级别 新鲜商品按批次严格隔离
20 订单类型=销售退货 批次属性=良品 推荐固定的库位 - COLD-QC-质检区 必须是空的库位+不许混放产品 退货商品质检隔离
30 批次属性=次品 推荐固定的库位 - WASTE-处置区 必须是空的库位+不许混放产品+不许混放批次 次品严格隔离处置
999 全部=不限 推荐固定的库位 - TEMP-COLD 校验体积 兜底规则:临时冷藏区

6.4 配置最佳实践

#### 6.4.1 优先级设计原则

  1. 异常处理优先:次品、待检商品的规则应设置高优先级
  2. 精确匹配优先:条件越精确的规则优先级越高
  3. 业务关键优先:影响关键业务指标的规则优先级更高
  4. 兜底规则垫底:确保所有商品都有去处

#### 6.4.2 测试验证方法

场景测试矩阵:

测试场景 订单类型 批次属性 产品ABC 包装级别 期望规则
场景1 销售退货 良品 A类 单件 规则10
场景2 销售退货 次品 A类 单件 规则30
场景3 采购入库 良品 B类 原箱 规则50
... ... ... ... ... ...

验证步骤:

  1. 准备测试数据,覆盖所有可能的筛选条件组合
  2. 执行上架策略,记录实际匹配的规则
  3. 对比期望结果,确认配置正确性
  4. 测试边界条件和异常情况

#### 6.4.3 性能优化建议

  1. 规则数量控制:单个策略包的规则行建议不超过20条
  2. 条件简化:避免过于复杂的筛选条件组合
  3. 索引优化:确保库位查询相关字段有适当的数据库索引
  4. 缓存机制:对频繁查询的库位信息进行缓存
  5. 预计算与监控:可对库位可用容量、SKU库位占用数等高频指标做预计算;策略模拟、日志分析和冲突预警可以异步处理

总结

WMS上架策略是一个复杂而精密的业务系统,它通过策略包头信息、策略包明细行、筛选条件和限制条件的组合,实现了对货物存储位置的智能决策。

核心设计原则:

应用价值:

通过合理配置上架策略,企业可以在确保业务合规的前提下,最大化仓储运营效率,这是现代WMS系统的核心竞争力之一。