“OM”是“Order Management”的缩写,中文意思是“订单管理”。在ERP系统中,OM模块主要负责管理从客户下订单到订单完成整个过程的业务流程。
为什么叫OM?
- O代表 Order(订单)
- M代表 Management(管理)
订单管理(OM)模块涵盖了订单的创建、修改、跟踪、发货、开票等环节,是连接销售、库存、生产和财务的重要桥梁。
OM模块的核心作用:
- 客户管理:对客户进行录入维护以及查询客户信息。
- 订单录入与维护:快速准确地录入客户订单信息。
- 订单跟踪:实时掌握订单状态,确保按时交付。
- 库存协调:根据订单需求协调库存和生产计划。
- 发货与开票:支持发货安排和发票管理。
- 客户服务:提升客户满意度,减少订单错误。
一、订单管理(OM)核心框架
核心逻辑:OM = 客户需求 → 订单处理 → 发运开票 → 数据闭环
案例:电商公司接到订单 → 检查客户信用 → 生成订单 → 仓库发货 → 财务开票 → 退货逆向流程
二、客户管理:不只是录入,更是风控
- 录入,维护以及查询客户信息
- 客户绩效管理:划分客户信用等级对客户或客户地点设定信贷额度
- 联机客户信贷检查
2.1、 客户信息管理
-
必填项:客户编码、名称、收货地址、发票地址(与应收模块共享)
-
特殊字段:
-
客户地点:同一客户可能有多个收货/开票地址
-
客户分类:VIP/普通客户(影响价格策略)
-
案例:某客户在系统中被错误标记为"内部测试客户",导致无法生成发票 → 需检查客户属性中的"可开发票"标志。
2.2、客户信用管理(高风险环节!)
功能 | 操作步骤 | 典型问题 |
---|---|---|
信用等级划分 | 根据历史付款记录设置A/B/C级 | 等级规则不清晰导致授信错误 |
信贷额度设置 | 对客户或客户地点设置最大欠款额度 | 父子客户额度重复计算 |
联机信贷检查 | 订单保存时自动触发检查(可设置硬性/警告拦截) | 系统未启用实时检查功能 |
案例:客户下单时系统提示"信用额度不足" → 需临时申请信用额度调整 → 在OM模块手动覆盖信用检查。
三、订单全生命周期管理(含隐藏细节)
3.1、 正常销售订单
Step 1:录入订单
操作路径
订单管理 → 订单/录入 → 新建订单
核心操作
操作项 | 说明 | 系统逻辑 |
---|---|---|
必填字段 | - 客户名称 - 订单类型(如"标准销售订单") - 销售员 - 价格表名 - 项目及数量 - 发货仓库 | 系统强制校验,缺失任意字段无法保存 |
系统自动生成 | - 订单编号(格式如SO-001234,不可修改) - 价格(从价格表自动带出) | 价格取自所选价格表,若价格表未维护项目价格,系统报错 |
状态变更 | 手动将订单状态从"输入"改为"已预订" | 状态未变更为"已预订"时,订单仅保存不生效,仓库不可见 |
🛑避坑案例:
某销售员录入订单后直接关闭页面,未修改状态 → 仓库查无此单 → 客户投诉延迟发货
👉解决方案:设置审批规则,强制检查订单状态是否为"已预订"
Step 2:订单发放(关键动作!)
操作路径
订单管理 → 发运/发放 → 进入发运发放界面
操作步骤
-
修改筛选条件:将
拖欠订单
域从"排除"改为"包括"(否则无法检索到未处理订单) -
指定参数:输入订单号、发货仓库(需与录入时一致)
-
生成批次号:存盘后系统自动生成发运批次号(格式如BATCH-20230815-001)
-
触发后台进程:系统自动运行
Pick Release
进程,生成拣货任务
验证发放成功
操作路径:库存 → 事务处理 → 打印挑选单
-
成功标志:挑选单显示待拣货项目及数量
-
失败标志:显示"未发现数据"
-
常见原因:项目未设置"可发货"属性 / 仓库库存不足 / 后台进程未完成
-
🔥极端场景:
批次号生成后,库存被其他订单抢占 → 需重新运行Pick Release
进程 → 系统自动分配可用库存
Step 3:发货确认与关闭订单
操作路径
订单管理 → 发运/确认 → 输入批次号
核心流程
步骤 | 操作说明 | 系统联动 |
---|---|---|
发货确认 | - 输入实际发货数量(可部分发货) - 点击确认 | 库存模块自动扣减库存数量 |
状态变更 | 订单状态自动改为"已关闭"(完全发货)或保持"部分发运" | 部分发运订单需多次操作直至全部发货 |
后台进程 | 必须按顺序运行: ① 更新发货信息 ② 库存接口 ③ 应收接口 | 顺序错误后果: - 库存未扣减但已生成发票 - 财务与实物账不一致 |
关键验证点
-
库存检查:
-
路径:
库存 → 物料查询
→ 验证库存数量是否准确扣减
-
-
应收检查:
-
路径:
应收模块 → 事务处理
→ 检查发票是否自动生成
-
💥血泪教训:
某订单跳过库存接口
直接运行应收接口
→ 财务显示已开票,但仓库未出库 → 月结时库存差异5万元
3.2、 退货订单(RMA)逆向流程
Step 1:录入退货订单(RMA创建)
操作路径
订单管理 → 订单/返回 → 新建退货订单
核心操作
操作项 | 说明 | 系统逻辑 |
---|---|---|
必填字段 | - 原订单号(可选) - 客户名称 - 退货类型(如换货/退款) - 退货项目及数量 - 退货原因 | 系统自动生成RMA编号(格式如RMA-20230815-001) |
关联信息 | 可关联原销售订单,自动带出产品、价格信息 | 若无原订单,需手动输入项目详情 |
状态初始化 | 订单状态默认为"输入" | 需后续审批才能生效 |
🛑避坑案例:
某客服误将"换货"选为"退款" → 仓库按退款流程销毁商品,客户未收到替换品 → 引发二次投诉
👉解决方案:设置退货类型为必校验字段,并与退货原因联动
Step 2:退料审批(风控核心)
操作路径
订单管理 → 订单/栏目批准 → 选择退货订单
审批流程
环节 | 操作说明 | 系统规则 |
---|---|---|
初审 | 检查退货合理性(是否在保修期/是否符合退货政策) | 需上传客户提供的证明文件(如照片/检测报告) |
终审 | 审批人核定退货处理方式(退款/换货/返修) | 大额退货(如>1万元)需财务总监联合审批 |
状态变更 | 审批通过后,订单状态变为"已批准" | 未审批订单无法进行后续操作 |
🔥极端场景:
某退货未经审批直接接收 → 系统生成负数发票 → 导致当月收入虚减10万元
👉应对措施:设置库存模块拦截未审批RMA的物料接收事务
Step 3:运行退料授权界面(数据桥梁)
操作路径
订单管理 → 退货/退料授权 → 输入RMA编号
关键动作
-
生成退货指令
-
系统创建退货事务处理编号(格式如RTN-001)
-
-
同步数据到库存
-
在库存模块生成待接收任务
-
-
控制逻辑
-
若退货数量超过原订单数量,系统报警并冻结操作
-
💥血泪教训:
未运行此界面直接操作库存接收 → 导致退货数据未关联订单 → 财务无法冲销应收账款
Step 4:RMA检查与接收(实物管控)
操作路径
库存管理 → 事务处理 → RMA接收
操作流程
步骤 | 操作说明 | 验证要点 |
---|---|---|
到货验收 | - 检查实物SN码/批次号 - 验证商品损坏程度 | 需拍照存档并与系统记录比对 |
库存接收 | - 选择"接收至"仓库(如质检仓/报废仓) - 输入实际接收数量 | 部分接收需保留RMA未完成状态 |
状态更新 | 接收完成后,RMA状态变为"已接收" | 触发库存价值调整(返修品不计入可用库存) |
🛑避坑案例:
将应返修商品误收至报废仓 → 系统自动计算损失 → 实际商品仍可修复造成浪费
Step 5:财务结算(闭环终点)
操作路径
应收模块 → 事务处理 → 生成贷项通知单
强制顺序
-
先运行退料授权界面
-
确保退货数据已同步至财务(退货数量、金额、税码)
-
-
再运行应收界面
-
系统自动生成:
-
贷项通知单(冲销原收入)
-
换货订单(若为换货类型)
-
-
核心校验
校验项 | 失败后果 |
---|---|
退货价格一致性 | 原订单价格已变更时,需手动确认冲销金额 |
税务匹配 | 原发票税率与当前税率不一致时,需财务人工干预 |
💥致命错误:
先运行应收界面 → 生成错误贷项单 → 需冲销再重新开具 → 导致月度报表延误
四、价格管理:不只是数字游戏
4.1、 价格表搭建四步法
步骤 | 操作要点 | 数据验证方法 |
---|---|---|
1.定义表头 | 设置价格表名称、币种、生效日期 | 检查是否与其他价格表有效期重叠 |
2.批量导入 | 使用"增加项目"功能批量加载(建议用模板) | 导入后按项目分类排序检查 |
3.单行维护 | 特殊价格用"行插入"单独设置(如大客户专属价) | 检查优先级:行价格 > 批量价格 |
4.折扣规则 | 设置阶梯折扣(如满100件打9折)或组合促销(买A送B) | 用测试订单验证折扣计算逻辑 |
经典错误:某促销价生效日期设置为次日0点,但订单在23:59生成 → 系统仍取原价。
4.2、 价格穿透机制
-
优先级:客户专属价 > 促销价 > 标准价
-
价格继承:若未设置客户价格,默认取标准价格表
-
价税分离:需维护税码(如VAT17%对应代码V17)
案例:某产品在标准价格表中为100元,但客户专属价显示90元 → 需检查客户是否关联到正确价格表。
五、跨模块集成:牵一发动全身
5.1、 与工程数据模块的硬关联
项目属性检查清单:
1. 项目状态 = ACTIVE # 基础开关
2. 客户订购项目 = 是 # 允许销售
3. 可发货 = 是 # 允许出库
4. 可开发票 = 是 # 允许财务结算
5. 税收代码 = V17 # 确保税率正确
致命错误:新产品上线时未设置"可发货"属性 → 导致数千订单卡在发运环节。
5.2、 库存模块的三重校验
校验点 | 影响场景 | 解决方案 |
---|---|---|
子库有效性 | 订单选择不存在的子库 | 维护仓库-子库映射表 |
批次/序列号控制 | 需追踪SN码的商品未启用控制 | 在工程模块启用序列号属性 |
可用量检查 | 显示有库存但被其他订单预留 | 运行"库存预留"报表核查 |
5.3、 应收模块的暗雷
-
发票地址:OM与应收共享客户地址,但以应收模块设置为准
-
付款条件:订单中付款条件错误 → 导致应收账款账期计算错误
-
争议管理:发票冲销需同步通知OM模块更新订单状态
审计案例:某客户发票地址变更未同步至OM → 导致100张发票寄往旧地址,损失快递费2万元。
六、高阶技巧:从运维角度理解OM
6.1、后台进程监控清单
进程名称 | 作用 | 异常处理方案 |
---|---|---|
Pick Release | 生成发运批次 | 检查库存事务处理接口表错误 |
Workflow Background | 处理订单状态流转 | 重启工作流代理进程 |
Interface Manager | 同步数据到其他模块 | 清理卡滞的接口表记录 |
6.2、 订单状态全解析
输入 → 已预订 → 已发放 → 挑库中 → 已发运 → 已关闭 ↑ ↖______退货中______↗
状态回退:已发放的订单需先取消发运 → 回退到已预订状态 → 再修改订单。