简介这份PPT方案聚焦SAP物料管理中的Segmentation细分策略面向SAP MM顾问、供应链计划与业务人员以及希望理解S/4HANA细分功能的实施运维人员重点解决物料属性细分后如何在销售、需求、采购和库存环节有效传递与区分的问题。压缩包共1个pptx文件约10.27MB按“细分简介—行业应用—系统实现—业务演示”编排配有特征CT04、细分结构SGT_S/SGT_C、细分评估及库存主数据等架构示意方便对照梳理配置逻辑。内容结合服装、电子、机械制造、快消品与光伏组件等场景具体展开白衬衫多属性管理、库存与销售区域及客户细分、主机与零部件生产安排、电池片效率传递等案例并延伸到需求管理与采购库存的衔接。目前已有691人学习适合作为SAP细分策略的方案参考和内部研讨材料。1. 同一件衬衫怎么就成了十几个物料号SAP 物料管理里有个功能叫 Segmentation中文一般翻成细分策略属于 S/4HANA 才有的东西。第一次碰到它是在一个服装行业的项目上同一款白衬衫四个颜色、两个产地、三个销售区域业务说“这些都得分开管BOM 不一样、可用量不一样、需求来源也不一样”。真要老实做就是一个物料号裂成二十四个编码表看着像乱码。Segmentation 干的事就是把这些属性从物料号里拆出来做成“段”物料号还是一个段在销售、需求、采购、库存各环节自己带着走。麻烦在于它不是装个包就能用得从特性、结构、策略一层层配下来中间哪一层填错前端什么都看不出来只有等业务下单或者 MRP 跑完才发现库存对不上。这篇记的是我自己在一套 S/4HANA 测试客户端上从头配通的全过程给正在接这套配置的人照着走。所有 Z 开头的名字都是我随手起的示例按各自命名规范替换。2. 动手前先把环境列清S/4HANA 版本、客户端和传输请求先说结论这套东西在 ECC 上根本没得配不用找了。ECC 里遇到“同一物料要按属性区分”的需求常规做法是批次管理加分类或者干脆上变式配置硬凑也能凑出来但业务要的“销售订单上直接带属性、库存按属性分堆、ATP 按属性算”是给不了的。所以第一步不是打开 CT04而是确认手里这套系统到底是不是 S/4HANA以及细分有没有被激活。2.1 版本和前置条件对照版本这块我不想给一个精确到补丁号的数字因为不同实施商的 Best Practice 基线不一样。按我的经验S/4HANA 1809 之后的版本这套功能比较完整1511、1610 那些早期版本里细分的事务码能进但字段和 Fiori 应用对不上配到一半容易卡住。真正判断标准不是版本号是下面这张表里的四项能不能过。检查项要求在哪看不满足会怎样产品版本S/4HANA非 ECC系统状态里看组件版本SGTS、SGTC 事务码不存在细分激活已激活SPRO 搜 Segmentation看激活节点状态事务码进得去但保存报“细分未激活”特征组 SGT_SAP-C系统里存在CT04 里“特征组”下拉框特性建了SGTS 里搜不到字段选择细分字段已放开物料主数据字段选择配置MM01 里压根看不到策略字段“细分激活”这一步很多人会漏。它不在物料管理的配置树下面是在 Cross-Application Components 那边SPRO 里直接搜 Segmentation 比一层层点快得多。各版本路径文字会有点出入搜关键字是最稳的。提示激活这类操作会写配置表一旦激活不建议在同一个客户端里反复开关。配置前把客户端和传输请求定下来别在生产客户端上试。2.2 客户端、传输请求和权限配置客户端和测试客户端要分开。我的习惯是 100 配、200 验、300 演示细分这种跨模块的东西尤其要留一个干净的验证客户端因为库存段一旦有数据你就没法“退回去重来”了。传输请求这件事最容易翻车的地方在于CT04 建的特性走的是 Workbench 请求跟开发对象一类SGTS 的细分结构、SGTC 的细分策略走的是 Customizing 请求物料主数据根本不进请求。也就是说从开发机传到测试机特性和策略很可能落在两个不同的请求号里而结构又依赖特性先到位。传输顺序错了测试机上就是“特性在、结构打不开”。我一般会把这次配置相关的东西手工塞进同一个请求或者干脆按特性→结构→策略的顺序分三个请求、按顺序放。权限方面配置账号至少要能进 SPRO、能执行 CT04 / SGTS / SGTC外加物料主数据的维护权限。见过一次因为账号缺少细分相关的事务权限SGTC 里能进去但“新输入”按钮是灰的排查了两个小时才发现不是配置问题。2.3 业务侧先定死的三件事技术上开始之前业务侧必须把三件事定死否则配到一半一定返工。第一是特性也就是“到底关注物料的哪个属性”。光伏组件那个例子很典型客户要 500MW 的组件工艺评估下来必须用效率 23.5% 的电池片才能保证产出合格率那“电池片效率”就是必须做细分的特性。第二是细分结构也就是“哪几个特性放在一起组合”。效率和产地放在一个结构里还是拆两个结构取决于它们是不是总一起用。第三是细分策略也就是“这个结构在这颗物料上具体枚举出哪些段”。三个效率档乘两个产地就是六个段段值组合要提前列出来不要指望在系统里一边点一边想。3. 第一步 CT04 建特性特征组这一栏填错后面全断细分的地基是特性。特性本身不难建难在有一个字段填错了后面整条链路就断了而且系统不会给你任何提示你只会觉得“为什么 SGTS 里搜不到我刚建的特性”。3.1 CT04 的字段怎么填事务码 CT04输入特性名比如 ZSEG_EFF回车后进入维护界面。参照下面这张表填顺序别乱。字段示例值说明特性名ZSEG_EFF建议统一前缀方便后面按 ZSEG_* 批量查描述电池片效率档业务能看懂的话别写英文缩写状态Released已释放没释放的特性在细分结构里选不到数据类型NUM数值型效率这种要参与范围匹配的必须用数值长度 / 小数位5 / 323.500 这种三位小数够用值域单一值列表23.200、23.300、23.500 逐个列特征组SGT_SAP-C关键下面单独说值域这一项看业务。如果效率档位是固定的几档用单一值列表好处是段值只能在这几个里选不会出现手输 23.55 这种脏数据如果是不连续的区间用间隔值但间隔值配段的时候容易出边界问题我倾向于枚举。3.2 为什么特征组必须是 SGT_SAP-C这一栏是全文最不该省的地方。细分结构只认挂在 SGT_SAP-C 这个特征组下面的特性你不填或者填了别的组SGTS 里添加特性时列表里就不会出现它同时特性维护界面里的“相关性”页签也不会出来。相关性页签是给配置和细分联动用的没有它后面策略和物料的关联会变得很别扭。所以顺序是反过来的先在 SPRO 里把细分配置做掉确保 SGT_SAP-C 这个特征组在系统里存在再回来建特性。这也是为什么原文特别强调“若此处无法选择则详见细分配置说明”——不是让你随便选一个凑合是让你回去补配置。 建完特性后自查确认特征组真的落在 SGT_SAP-C 上 SELECT atinn, atnam, atfor, atkla FROM cabn INTO TABLE DATA(lt_charc) WHERE atnam LIKE ZSEG_%. atkla 就是特征组字段 期望值SGT_SAP-C 如果这里是空或者别的值回 CT04 改不要往下配 LOOP AT lt_charc INTO DATA(ls_charc). WRITE: / ls_charc-atnam, ls_charc-atfor, ls_charc-atkla. ENDLOOP.这段在 SE38 里临时建个报表跑一下就行不需要传输。CABN是特性主数据表ATNAM是特性名ATKLA是特征组ATFOR是数据类型。检查的目的是在建结构之前就把错误挡掉而不是等 SGTS 里搜不到再去怀疑人生。这个习惯我建议养成每建完一层用 SE16 或者一段小查询确认一次落库结果比在界面上反复点省时间。3.3 数值型特性的格式取舍效率、功率、厚度这类属性我一律用数值型。原因很实际数值型在细分里能做范围匹配后面如果业务说“23.5 及以上都算这个段”改起来还有余地用字符型存 “23.5%” 这种带符号的值看着直观但后面所有匹配都变成字符串比较稍微多个空格就匹配不上。单位信息不要塞进值里。效率的 % 号写在描述里值域里就是纯数字 23.500。组件功率这种带单位的可以把单位做成一个独立特性或者直接用物料的基本计量单位别混在段值字符串里。特性建完不要急着往下走把每一个特性名、描述、值域列成一张清单打印出来对着 SGTS 一条条勾。经验之谈三个以上的特性同时配靠记忆一定会漏。4. 第二步 SGTS 建细分结构启用空值和锁定是两个动作结构这一层的本质是把几个特性装进一个容器并定义这些特性组合起来以后允不允许出现“不指定”的情况。听起来简单实际坑最多的是“锁定”这个动作——它既是你配策略的前置条件也是你改不动结构的直接原因。4.1 建结构并挂特性事务码 SGTS也可以用 SGT_SETUP两个入口都能进。输入结构名比如 ZSEG_STRUCT01描述写“电池片效率与产地细分”然后进到明细界面。字段/操作示例值说明细分结构ZSEG_STRUCT01建议带上业务域别用 001 这种描述效率产地后面在策略下拉里靠它认人特性行ZSEG_EFF从 SGT_SAP-C 组里选特性行ZSEG_ORIGIN同上启用空值勾选见 4.2状态Unlocked → Locked见 4.3添加特性的时候选中的行要确认“相关”标志是打上的否则这个特性在结构里等于挂了个摆设段匹配的时候不参与。加完保存这时结构是新建立状态默认“解锁”。4.2 空值到底管什么“启用空值”翻译得有点糊实际含义是这个结构的段里允不允许某个特性的值留空。举个具体场景。如果结构里只有效率和产地两个特性都不允许空值那么六个段就都是“效率产地”的完整组合业务下单时必须两个值都给全。可现实里经常有“这批库存不区分产地反正都在同一个仓”的情况这时候就得允许产地为空段值变成“23.500 空”。所以勾不勾这一项取决于你业务上有没有“某些属性不关心”的库存。勾了空值段的数量会变多因为空值本身也算一个可选值。我见过有人为了“灵活”直接勾上结果段从 6 个变成 9 个业务选错段的概率直线上升。反过来不勾空值但实际业务需要收货的时候就会卡在“段值必须填写”这里。这一项建议和业务一起在白板上把组合列完再决定不要一个人拍。4.3 锁定和解锁改不动的真正原因新结构是“解锁”状态可以随便改。一旦这个结构被细分策略引用过状态就变成“锁定”特性列表不允许再动。这个设计其实是保护你。结构一旦被策略引用、策略又挂到了物料上历史单据上带的段值就和这个结构绑定了这时候改特性列表等于让历史数据对不上号。所以系统的做法是直接锁死。问题在于很多人不知道这个因果在测试机上随便建了个策略试手回头想给结构加一个特性发现改不了就开始找“解锁”按钮。解锁确实有但解锁后改结构再锁回去在测试机上无所谓在生产上就是给自己埋雷。正确做法是新建一个结构、新建策略、把物料切过去老结构留着不动历史数据继续按老结构解释。切物料这一步本身也要排期因为存量库存的段值不会自动跟着变。注意结构锁定之后不要试图通过调试或者直接改表的方式绕过去。这类操作留下的不一致后面查起来是没有后悔药吃的。5. 第三步 SGTC 建策略、MM02 挂物料、SPRO 补开关到这里特性有了、结构有了剩下的是把结构“实例化”成具体的段然后交给物料。这一段是纯配置活但每一步都有前置条件卡着顺序错了就停在半路。5.1 段策略里一行一个组合事务码 SGTC进来先选细分结构。这里有个前置结构必须是锁定状态如果还是解锁先回 SGTS 锁掉否则进段策略界面会提示结构不可用。选中结构后进入“段策略”点“新输入”开始加段。每一行是一个具体的段值组合系统会给一个段标识。示例段效率ZSEG_EFF产地ZSEG_ORIGINS0123.500华东S0223.500华南S0323.300华东S0423.300华南段值组合不能重复重复了保存会报错。段的数量别贪多我见过一个项目把颜色、尺码、产地、渠道四个特性全塞进一个结构组合出来四十多个段业务下单的时候下拉框翻三屏最后实际在用的只有八个。宁可先少建后面按需加加段比删段容易——删段要考虑历史单据引用。段标识的命名也建议统一S01、S02 这种顺序号在测试环境够用生产上建议带业务含义比如 E235-EC出问题的时候看单据就知道是哪个段。5.2 MM01/MM02 把策略挂到物料上物料主数据里有个细分字段组位置随版本会落在“附加数据”或者“分类”附近具体在哪一页取决于字段选择配置。进去以后填细分策略名保存。如果 MM01 里根本看不到这个字段别怀疑权限先去看字段选择SPRO 里物料主数据的字段选择配置把细分相关字段放开。这个配置是按物料类型和行业部门分的只对某几个物料类型放开是很常见的做法新加一个物料类型的时候要记得同步。挂上策略之后物料在采购、销售、库存各环节的单据上就会带段字段。这里有个容易忽略的点策略挂上去之前入库的库存是没有段值的这些库存不会自动补段。所以测试环境里一定要用干净的物料或者先清库存再挂策略。5.3 SPRO 里那几个开关和权限配置这一层的东西不多但漏一个就卡住细分激活前面说过不激活事务码能进但保存报错。字段选择决定物料主数据里能不能看到策略字段。编号范围结构和段的编号规则量大的时候要提前规划。权限配置账号和业务账号分开业务账号只需要能选段不需要能改策略。权限这块多说一句。段值一旦允许业务手工选选错的概率不低尤其是段名起得不够直白的时候。能做的是在权限上把“维护策略”和“使用策略”彻底分开业务侧只给选段权限改结构改策略的一律走配置账号。6. 配置里翻过的五次车现象、原因、解决这一节全是踩出来的。每条按“看到什么、为什么、怎么救”写遇到同类现象可以直接对号入座。6.1 SGTS 里搜不到刚建好的特性现象CT04 里特性保存成功状态也释放了进 SGTS 添加特性搜索框里就是没有这条。原因九成是特征组没选 SGT_SAP-C或者选了但系统里这个组压根没配出来。剩下一成是特性状态没到 Released保存了但没释放。解决回 CT04 看“特征组”字段的实际值跑一段 CABN 的查询确认 ATKLA 是不是 SGT_SAP-C。不是就改改完重新保存。如果下拉框里根本没有 SGT_SAP-C 这个选项说明细分的配置还没做完回 SPRO 补激活和特征组配置再回来建特性。这个顺序不能反。6.2 结构没锁定段策略里输不进去现象SGTC 里选好结构进段策略界面上的输入行是灰的或者保存的时候提示结构状态不对。原因结构还是解锁状态。系统的逻辑是“结构必须先固定才能往里灌段值”否则你一边加特性一边加段段值的含义随时在变。解决回 SGTS 把结构锁掉再回 SGTC。锁之前务必确认特性列表已经完整因为锁完就改不了了。如果确实漏了特性只能新建结构重来别想着先解锁改完再锁——测试环境随便折腾生产上这么干过的人都懂那种痛。6.3 段配好了库存还是分不开现象策略挂到物料了单据上也能选段但去 MMBE 或者库存表里看库存段字段一直是空的MRP 跑出来的可用量还是一个总数。原因三种可能。一是库存是在挂策略之前入的老库存没有段值二是物料主数据里的策略字段虽然填了但没保存成功或者字段选择没放开导致填了个空三是收货的时候段值没带进去操作员直接回车过去了。解决先确认物料主数据里策略确实存在MM03 看不是 MM02 看MM02 有缓存。确认存在的话把测试库存清掉重新做一笔收货收货时手工指定段再去看库存表。库存表里段字段有没有值是判断这套配置到底通没通的最直接证据。老库存的处理只能靠转储或者盘点调整没有批量补段的一键操作。6.4 结构锁了还想加特性硬改把数据改乱了现象上线后发现业务还需要按“供应商”细分但结构已经锁了策略也挂在几十个物料上。原因需求变更没提前评估。细分结构这种东西特性列表应该在上线前就冻结临时加属性的代价很大。解决新建一个结构把原特性加上新特性建新策略把物料逐个切到新策略上老结构保留不动用来解释历史单据。切换期间两套策略并存是正常的别想着一步到位。切换前把受影响物料的清单拉出来按物料组分批切切完一批验一批。6.5 传到测试机特性和结构都在策略是空的现象传输请求都释放了测试机上 CT04 能看到特性SGTS 能看到结构SGTC 进去策略列表是空的。原因CT04 的特性走 Workbench 请求SGTS/SGTC 走 Customizing 请求两个请求号不一样传输顺序错了或者策略所在的请求压根没释放。还有一种情况是结构名里带了系统前缀传过去以后对象名变了。解决先在测试机上跑 SGTS 看结构状态如果是解锁状态说明结构传过来了但策略没传回去查请求里到底包含哪些对象。以后这类配置我一般会强制把特性、结构、策略塞进同一个请求虽然不太符合规范但传输出错的概率低很多。传完一定要在目标系统里走一遍 SGTC 的段列表眼见为实。7. 装完怎么验五步闭环少一步都不算通配置这种东西界面上不报错不代表通了。我判断这套细分到底成没成只认一条链路特性挂对组、结构锁定、段枚举完整、物料挂上策略、单据上能带出段值。前四步是静态检查最后一步是动态验证缺一个都可能在上线后爆出来。7.1 五步验证清单步骤动作期望结果1SE16 查 CABN按 ZSEG_* 过滤ATKLA 全部为 SGT_SAP-C2SGTS 打开结构状态为锁定特性行齐全3SGTC 进段策略段数量与业务清单一致无重复组合4MM03 看物料细分策略字段有值5VA01 下测试单 MIGO 收货行项目带需求段库存带库存段第五步是重点。开一张销售订单行项目里选一个段保存再做一笔收货收货时指定同一个段然后去库存表里看那个段字段有没有值。需求段和库存段这两个字段是整套配置有没有真正落地的黑匣子其他界面再漂亮这两个字段是空的就等于没配。 验证销售订单行项目上的需求段有没有带出来 SELECT vbeln, posnr, matnr, kwmeng, sgt_rcat FROM vbap INTO TABLE DATA(lt_vbap) WHERE vbeln p_vbeln. sgt_rcat 就是需求段字段 如果整列为空回物料主数据确认策略是否挂上 字段名以你们系统 SE11 里查到的为准不同版本可能略有差异 LOOP AT lt_vbap INTO DATA(ls_vbap). WRITE: / ls_vbap-vbeln, ls_vbap-posnr, ls_vbap-sgt_rcat. ENDLOOP.最后还有一个小技巧验证的时候不要只用一颗物料。至少挑三颗——一颗正常的、一颗带空值段的、一颗历史库存没段值的三种情况都走一遍才能知道你配的空值到底是不是按预期工作。这套东西我从第一次配到现在返工最多的不是技术难点是顺序。特性没落在对的组里就往下走结构没锁就去建策略策略没传到测试机就开始测单据每一步都能让你在错误的方向上多走两小时。从那以后我每次碰这套配置都强制在测试客户端把“下单—收货—看库存段”这条闭环走一遍看到段字段有值才敢往下做。希望帮到你。本文还有配套的精品资源点击获取