简介本资源是一份面向SAP顾问、成本控制专员及制造业IT实施人员的MTO按单生产模式深度实践指南系统解决定制化生产场景下销售订单控制策略选择、后台配置落地与期末成本结算等核心难题。资料以1个3.29MB的PPTX文件呈现共142页涵盖MTO理论框架、不采用/采用销售订单控制的差异化配置路径、成本对象控制逻辑、销售业务全流程映射、期末结算活动设计以及高阶决策对比如库存估值方式、利润分析粒度。内容结构清晰每模块均含配置要点、界面示意逻辑与典型业务场景说明特别强化了销售订单作为成本对象的成本归集、承诺管理与在途物资核算等实操难点。目前已有7658人学习下载是多年一线SAP生产模块实施经验沉淀的精华总结适合中高级用户快速掌握MTO全链路配置逻辑与成本核算关键控制点。1. SAP MTO 成本核算为什么“按单生产”不等于“按单算账”而多数人一配置就翻车你有没有遇到过这种场景客户下了个高价值定制订单生产部门按时交付了财务却在月底结账时发现——这笔订单的毛利是负的但系统里查不到它到底在哪花了钱成本像被吸进黑洞只在销售订单行项目里显示一个空荡荡的“未结算”而生产订单上堆着几百条物料消耗、工时确认、间接费用分摊就是死活不往销售订单上归集。更玄学的是同样一张销售订单换一个订单类型OR → TA成本突然就“活”了或者明明勾选了“销售订单作为成本对象”期末运行CO88却提示“无待结算成本对象”。这不是操作手误而是SAP MTO成本核算机制本身在底层就设了一道逻辑闸门销售订单能否成为真正的成本对象不取决于前台是否勾选而取决于后台配置中“成本对象控制场景CO-PC Scenario”与“库存评估方式Valuated vs Unvaluated Sales Order Stock”之间那组隐式耦合的校验规则。这份珍藏多年的资料之所以珍贵正因为它把这套常被当作“黑匣子”的联动机制用142页逐帧拆解——从MRP运行时如何触发销售订单库存创建到CO88结算时如何根据KP26定义的结算规则匹配生产订单再到KKS2如何将多层BOM的半成品成本穿透到最终销售订单项。它不是教你怎么点按钮而是告诉你每一个配置开关背后都对应着SAP CO模块对“成本流”与“实物流”分离/耦合关系的一次哲学选择。2. 成本对象控制场景CO-PC ScenarioMTO的两种灵魂决定了成本是“漂浮”还是“锚定”SAP MTO的成本核算不是单一模式而是由两个正交维度构成的矩阵是否启用销售订单控制Controlling by Sales Order和销售订单库存是否估值Valuated Sales Order Stock。这两者共同决定了CO-PC场景的类型而每种场景对应一套完全不同的成本归集路径、结算逻辑和报表语义。理解这个矩阵是避免后续所有配置翻车的起点。2.1 场景本质CO-PC Scenario 不是配置项而是系统自动推导的“契约”在SAP中“CO-PC Scenario”并非一个可直接维护的配置表而是由以下三个核心配置项组合后系统在运行时动态推导出的逻辑标识OKKP 中定义的“控制范围Controlling Area”的缺省场景OPJK 中为生产订单类型如PP01分配的“成本对象控制场景”OVKK 中为销售订单类型如OR定义的“库存评估类别Stock Type”当这三者组合满足特定条件时系统才允许启用销售订单作为成本对象。例如若OVKK中销售订单类型OR的库存评估类别设为“未估值Unvaluated”则即使OPJK中为PP01分配了“销售订单控制”场景系统也会在创建生产订单时强制忽略销售订单号——因为未估值库存意味着实物流与价值流必须分离成本无法绑定到订单实体上。提示查看当前生效的CO-PC场景最可靠的方式不是翻配置表而是用事务码KKA3查看某张销售订单项的“成本对象控制状态”。它会明确显示Scenario: 30带销售订单控制的估值库存或Scenario: 20不带销售订单控制的估值库存这才是系统实际执行的契约。2.2 场景30带销售订单控制 估值库存成本的“全息投影”这是MTO最典型的高精度核算场景。其核心特征是销售订单项SO Item本身就是一个完整成本对象且拥有独立的库存账户BSA和价值主数据。* 示例销售订单4815/10 的成本对象结构KKA3 输出简化 Cost Object: 4815/10 Scenario: 30 (Sales Order Controlling with Valuated Stock) Stock Type: Valuated (BSA: BSX, GBB, etc.) Cost Elements: - Material: $110 (from GRN to SO stock) - Labor: $180 (from confirmation to SO stock) - OH: $150 (via assessment to SO stock) Settlement Rule: 100% to SO Item (via KSU5)关键机制在于所有与该销售订单关联的生产订单如PP01在收货GRN时物料移动类型如101会将库存记入销售订单专属库存SO Stock而非普通库存Unrestricted Stock。同时系统自动为该SO Item创建一个虚拟的“成本对象实例”所有生产订单的工时确认、间接费用分摊通过KSU5定义的结算规则都会实时写入此对象。期末运行CO88时系统依据KP26中为该场景定义的结算规则如“按实际发运数量结算”将SO Stock中的累计成本连同已开票收入一并结转至获利能力分析CO-PA。2.3 场景20不带销售订单控制 估值库存成本的“产品级聚合”此场景下销售订单仅作为生产驱动源不承担成本归集职能。成本仍按传统方式在生产订单Production Order或成本中心Cost Center层级归集销售订单仅用于MRP和发货控制。* 示例销售订单4763/20 的成本对象结构KKA3 输出简化 Cost Object: 4763/20 Scenario: 20 (No Sales Order Controlling, Valuated Stock) Stock Type: Valuated (but cost not assigned to SO) Cost Elements: - Material: $100 (posted to production order) - Labor: $200 (posted to production order) - OH: $150 (posted to production order) Settlement Rule: 100% to Product Cost Component (e.g., FG material)此时销售订单库存虽为估值库存但其价值来源于标准成本Standard Cost Estimate而非实际生产成本。系统在收货时只是将标准成本从生产订单转移到SO Stock而实际差异Material Price Variance, Production Variance仍留在生产订单层级最终通过KO88结转至损益。这种模式适合“组装型订单ATO”或“包装变体订单”即产品主体标准化仅末端包装/标签按单定制无需追踪每个订单的精确毛利。2.4 场景40带销售订单控制 未估值库存成本的“承诺式管理”这是最容易被误解的场景。未估值库存意味着实物流Quantity Flow存在但价值流Value Flow被剥离。销售订单库存仅记录数量不记录金额所有成本仍需通过其他路径归集。* 示例销售订单4711/10 的成本对象结构KKA3 输出简化 Cost Object: 4711/10 Scenario: 40 (Sales Order Controlling with Unvaluated Stock) Stock Type: Unvaluated (no BSA account) Cost Elements: - Material: $0 (not posted to SO stock) - Labor: $0 (not posted to SO stock) - OH: $0 (not posted to SO stock) Settlement Rule: Manual or via Commitment only (e.g., PR, PO)在此场景下销售订单项只能收集“承诺Commitments”——即采购申请PR、采购订单PO、内部订单IO等尚未发生实际成本的预算占用。真正的成本归集必须依赖于生产订单结算到销售订单项这一额外步骤通过KO88或手动结算。这意味着生产订单收货时库存进入“未估值SO Stock”但成本仍留在生产订单上必须在发货前或开票后手动运行CO88指定将生产订单的实际成本结算至销售订单项若忘记结算销售订单项将永远显示“零成本”导致毛利计算完全失真。注意SAP官方强烈不推荐场景40用于正式环境。资料中第17页的决策矩阵明确标注“Not supported”因其极易因人为疏漏导致成本断链。3. 销售订单库存Sales Order Stock估值与未估值的底层实现差异销售订单库存SO Stock是MTO成本核算的物理载体但它的“估值”与否绝非一个简单的勾选项而是牵动整个FI/CO/MM模块数据模型的底层开关。理解其存储结构与会计影响是排查成本不归集问题的关键。3.1 估值库存Valuated SO Stock双账户体系的硬约束当OVKK中销售订单类型被设为“估值”时系统为每个销售订单项SO Item在库存主数据中创建一个独立的库存地点Storage Location 库存类型Stock Type组合并为其分配完整的会计科目Account Determination。-- 关键数据库表MSEG物料凭证中估值库存的典型记录 SELECT MBLNR, MJAHR, ZEILE, BWART, MATNR, WERKS, LGORT, CHARG, SHKZG, DMBTR, WRBTR, KDFIF FROM MSEG WHERE MBLNR 48150000001 -- 物料凭证号GRN for SO 4815/10 AND BWART 101; -- 收货移动类型 -- 输出关键字段 -- DMBTR 600.00 - 本地币金额计入SO Stock价值 -- WRBTR 600.00 - 本位币金额同上 -- KDFIF 4815/10- 成本对象字段明确指向SO Item这里的核心是KDFIF字段——它存储了成本对象编号Cost Object ID。在估值库存场景下KDFIF必须填入销售订单项如4815/10否则系统拒绝过账。这个字段直接决定了FI层面会计凭证中贷方科目为SO Stock对应的BSA账户如BSX借方为生产订单的WIP账户CO层面该笔金额被计入销售订单项的成本对象成为KKA3中可查询的“已归集成本”。3.2 未估值库存Unvaluated SO Stock单账户体系的软隔离未估值库存下KDFIF字段为空或填入占位符如0000000000系统不会为SO Stock创建独立的价值账户。所有收货操作仅更新库存数量LABST字段不生成任何会计凭证。-- 未估值库存的MSEG记录对比 SELECT MBLNR, MJAHR, ZEILE, BWART, MATNR, WERKS, LGORT, CHARG, SHKZG, DMBTR, WRBTR, KDFIF FROM MSEG WHERE MBLNR 47110000001 -- GRN for SO 4711/10 (unvaluated) AND BWART 101; -- 输出关键字段 -- DMBTR 0.00 - 本地币金额为零 -- WRBTR 0.00 - 本位币金额为零 -- KDFIF - 成本对象字段为空此时库存数量LABST仍可被MRP读取、被发货VL01N消耗但其背后没有价值支撑。所有成本必须通过事后结算Post-Settlement方式注入即先让生产订单完成全部成本归集材料、人工、费用再通过CO88将这些成本“搬运”到销售订单项。这就像给一辆没有油箱的车加满油——油成本必须在车SO Stock造好之后再人工灌进去。3.3 库存评估类别的配置陷阱OVKK 表的隐藏校验OVKKDefine Stock Type for Sales Order是决定SO Stock估值属性的源头。但很多人忽略了一个致命细节OVKK中的“库存评估类别Valuation Category”不仅控制库存是否估值还强制约束了“销售订单类型”与“生产订单类型”的匹配关系。销售订单类型OVKK中Stock Type允许的生产订单类型原因OR标准订单Valuated (V)PP01, PP02系统允许SO Stock与生产订单双向价值流动OR标准订单Unvaluated (U)PP03, PP04系统强制要求生产订单类型必须支持“未估值结算”如果强行将OR类型设为Unvaluated却仍使用PP01默认绑定Scenario 30系统会在创建生产订单时抛出错误Message No. KD503: Cost object control scenario not consistent with stock type。这是因为PP01的配置OPJK预设了“估值库存”前提与OVKK的“未估值”指令冲突。提示检查OVKK配置是否生效最直接的方法是创建测试销售订单然后立即执行事务码MMBE查看该订单的库存视图。若“评估类型Valuation Type”列为空或显示---说明OVKK未正确配置或未激活。4. 配置避坑指南5个血泪经验总结的MTO翻车现场MTO配置不是线性流程而是一个环环相扣的校验网。任何一个环节的微小偏差都会导致成本流在某个节点彻底中断。以下是基于这份资料及真实项目踩坑记录的5个高频问题每一条都附带可复现的现象、根因定位和修复路径。4.1 现象销售订单创建后无法在CO模块中看到该订单项作为成本对象KKA3查无此对象原因OVKK中销售订单类型的“库存评估类别”未维护或维护为---空值。系统默认将其视为“未估值”但未触发任何报错导致SO Stock创建失败进而无法生成成本对象。排查事务码OVKK→ 输入销售订单类型如OR→ 检查“库存类型Stock Type”字段是否为VValuated或UUnvaluated。若为空系统按U处理但不提示。解决在OVKK中为该销售订单类型明确指定V估值或U未估值并保存激活。切记空值不等于未估值而是系统未识别的非法状态。4.2 现象生产订单收货GRN成功但销售订单项成本仍为零KKA3显示“无成本”原因OPJK中为生产订单类型分配的“成本对象控制场景”与OVKK中销售订单类型的库存评估类别不匹配。例如OVKK设为V估值但OPJK中PP01被分配了Scenario 20无销售订单控制。排查事务码OPJK→ 输入生产订单类型如PP01→ 查看“成本对象控制场景CO-PC Scenario”字段。再比对OVKK中该销售订单类型的Stock Type。两者必须兼容V↔30/20U↔40。解决在OPJK中为PP01重新分配Scenario 30若OVKK为V或Scenario 40若OVKK为U。注意修改后需清空相关缓冲SE04 →$/CO/PC/SCENARIO并重启对话。4.3 现象CO88结算时提示“无待结算成本对象”但KKA3显示该销售订单项有累计成本原因KP26中为该CO-PC场景定义的“结算规则Settlement Rule”未维护或维护了但“结算接收方Receiver”未指向有效的获利能力分析CO-PA特征值如0SAL销售订单。排查事务码KP26→ 输入控制范围场景编号如30→ 检查“结算规则”是否激活以及“接收方”类型是否为Profitability Segment且“接收方对象”是否包含0SAL销售订单。解决在KP26中为场景30创建新规则接收方类型选Profitability Segment接收方对象填0SAL结算比例100%。关键必须点击“复制”按钮生成新版本旧版本不会自动更新。4.4 现象销售订单发货VL02N后库存减少但CO模块中该订单项成本未同步减少仍显示全额原因未在OKKP中为控制范围启用“发货过账更新成本对象Goods Issue Updates Cost Object”功能。系统默认只更新库存数量不触发成本结转。排查事务码OKKP→ 选择控制范围 → 点击“控制范围参数文件Controlling Area Parameters” → 检查“发货过账Goods Issue”下的“更新成本对象Update Cost Object”是否勾选。解决勾选该选项并保存。注意此设置影响全局启用后所有发货都将触发成本对象更新需确保KP26结算规则已就绪。4.5 现象同一销售订单下多个生产订单部分订单成本能归集到SO项部分不能原因生产订单的“订单类型Order Type”与“工厂Plant”组合在OPJK中被分配了不同的CO-PC场景。例如工厂1000的PP01为Scenario 30工厂2000的PP01为Scenario 20。排查事务码CO03→ 输入问题生产订单号 → 查看“订单头数据Header Data”中的“订单类型”和“工厂” → 再用OPJK检查该订单类型工厂组合的场景分配。解决统一OPJK中所有相关工厂的PP01场景分配。切记OPJK的分配是订单类型 × 工厂粒度不是全局订单类型粒度。5. 期末结算活动Period-End Settlement从CO88到KKS2的闭环验证链MTO的成本核算闭环最终落在期末结算。但这不是一键运行CO88就能搞定的“魔法”而是一条需要逐层验证的因果链从生产订单的完工确认到销售订单的发货开票再到CO-PA的获利分析。资料中第18-142页的精髓正在于它把这条链拆成了可触摸的验证点。5.1 CO88结算的“启动器”而非“执行者”CO88Settle Orders常被误认为是“把成本从生产订单搬到销售订单”的工具。实际上它的角色是触发结算规则KP26的执行引擎。它本身不决定成本去哪只负责按KP26的指令调用底层结算函数如KOSB_SETTLE_ORDER。* CO88执行时的关键逻辑简化 CALL FUNCTION KOSB_SETTLE_ORDER EXPORTING i_aufnr 000000123456 生产订单号 i_kokrs XXXX 控制范围 i_kdauf 4815 销售订单号仅当Scenario 30/40时有效 i_kdpos 10 销售订单项 IMPORTING e_tcode CO88. * 此函数内部会读取KP26规则确定接收方如0SAL4815/10再调用KSV5结算。因此CO88报错“无待结算对象”90%的原因是KP26规则未覆盖该生产订单的当前状态如订单状态为REL而非TECO或接收方对象0SAL在CO-PA中未激活。5.2 KKS2结算的“显微镜”暴露每一笔成本的去向当CO88运行后必须立刻用KKS2Display Settlement Documents查看结算凭证。这是唯一能确认“成本是否真的到达销售订单项”的证据。KKS2 输出示例关键字段 Document Date: 2023.12.31 Settlement Document: 5000001234 Sender: 000000123456 (Production Order) Receiver: 4815/10 (Sales Order Item) Cost Element: 400000 (Material) Amount: $110.00 Settlement Type: Actual (not Plan)若KKS2中找不到该接收方说明KP26规则未命中若找到但金额为0说明生产订单上该成本元素未发生如未做物料消耗确认若金额正确但KKA3仍为0说明KKS2的结算凭证未被CO模块正确读取检查CO模块缓冲或重跑COOIS。5.3 CO-PA获利能力分析最终的“法庭”判决订单盈亏所有MTO成本核算的终极输出是CO-PA中的获利能力段Profitability Segment。销售订单项0SAL是CO-PA的核心特征值它将成本Debit与收入Credit在同一维度下对齐。-- 查询CO-PA中销售订单4815/10的盈亏简化 SELECT PAOBJNR, PABRANCH, KSTAR, DMBTR, WRBTR FROM CE1XXXX -- CO-PA行项目表XXXX为控制范围 WHERE PAOBJNR 4815/10 -- 获利能力段 销售订单项 AND KSTAR IN (400000, 500000, 600000); -- 成本要素 -- 输出应包含 -- 400000 (Material): DMBTR -110.00 -- 500000 (Labor): DMBTR -180.00 -- 600000 (OH): DMBTR -150.00 -- 000000 (Revenue): DMBTR 600.00 -- 来自FI开票凭证若此处数据缺失问题一定出在FI开票VF01时未将销售订单号传递给CO-PA检查OVKJ中开票凭证类型的“获利能力分析”设置或CO88结算未将成本推送至此。提示KKS2和CO-PA是MTO配置的“照妖镜”。任何配置问题最终都会在这两个地方留下不可磨灭的痕迹。从那以后我每次上线新MTO配置都强制走一遍“创建SO → 创建PO → GRN → TECO PO → CO88 → KKS2 → CO-PA”的全链路验证哪怕只是10分钟。因为成本一旦结错追溯起来要花10小时。希望帮到你。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
Code::Blocks与MinGW64搭建C语言开发环境指南 1. 为什么选择Code::Blocks搭配MinGW64? 作为C语言入门的第一道门槛,环境配置往往让新手手足无措。Code::Blocks作为轻量级跨平台IDE,配合MinGW64这套GNU工具链的Windows移植版,能完美支持C11/C17标准,相比Visual Stud… · 2026/11/4 8:35:06
CSS3关键帧动画:原理、技巧与性能优化 1. CSS3关键帧动画深度解析 作为一名前端开发者,我使用CSS3动画已经有7年多的时间了。记得第一次看到keyframes动画时的震撼——原来不需要JavaScript就能实现如此流畅的动效!今天我就来分享这个强大工具的核心用法和实战经验。 关键帧动画(… · 2026/11/4 8:35:06
2026年Vue3主流UI组件库深度对比与选型指南 1. 前端开发现状与技术选型思考2026年的前端领域已经进入了一个高度成熟的阶段,Vue3作为主流框架之一,其生态体系愈发完善。作为一名长期奋战在一线的前端开发者,我深刻感受到选择合适的UI组件库对项目开发效率的决定性影响。当前主流趋势表明… · 2026/11/4 8:34:05
30岁零基础转型网络安全的实战指南 1. 职业转型的现实挑战与机遇 30岁转行进入网络安全领域,既是一个充满可能性的选择,也是一条需要谨慎规划的道路。作为过来人,我见过太多人带着满腔热情进入这个行业,却因为准备不足而黯然离场。这个行业最残酷也最公平的地方在于… · 2026/11/4 9:51:52
烟草商业公司AI应用全景图:23个部门48个场景落地指南 在烟草商业公司做数字化规划,我最常被业务部门问的一句话是:"AI到底能帮我们干什么?"这个问题看起来简单,但要给出真正有用的答案并不容易——不能只说几个演示性质的场景,得把整个公司的业务盘一遍… · 2026/11/4 9:51:52
WeKnora:面向企业知识管理的本体感知型RAG基建 1. WeKnora不是“又一个RAG项目”,而是知识库基建范式的重写最近在几个技术群和开源社区里,几乎每天都能看到有人发截图:“微信开源了WeKnora,号称神级知识库项目”。一开始我也没太当回事——毕竟这两年RAG项目像雨后春笋&#x… · 2026/11/4 9:51:52
舆情智能体与传统舆情系统的六大差异及企业选型指南 最近半年,我被问到最多的一个问题就是:“现在都在说舆情智能体,这东西跟以前用的舆情系统到底差在哪儿?我们是不是该换了?”问这个问题的人,有品牌公关负责人,有做舆情监测的甲方团队࿰… · 2026/11/4 9:51:52
VLP-16激光雷达UDP数据包解析与点云生成原理 简介:《Velodyne VLP16 用户手册》面向激光雷达开发者、机器人感知与自动驾驶方向的学习者和工程人员,围绕VLP-16实时三维激光雷达的安装、配置、数据解析与维护提供系统指导。文件为1个docx文档,压缩包约12.18MB,内容按安全注意事… · 2026/11/4 9:51:52
智能系统短期记忆模块设计与性能优化实践 1. 短期记忆模块的设计初衷 在构建智能系统时,我们常常会遇到信息过载的问题。就像人类大脑需要短期记忆来暂存电话号码一样,计算系统也需要类似的机制来处理即时信息。这个6.5版本的核心组件正是为了解决这个关键需求而设计的。 我最初构思这个模块时&… · 2026/11/4 9:50:52
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38
AI辅助技术栈评估:提升研发决策效率60% 1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17
从生成Token到直接决策:Jev如何重塑AI Agent工程实践 1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17
32G统一内存跑大模型:内存账、TPS实测与端云分流 想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38