Mark的技术博客

SAP顾问 | 咨询专家 | IT与AI技术探索者

吴让宇(Mark)

吴让宇(Mark)

SAP顾问 | 咨询专家 | IT与AI技术探索者

吴让宇(Mark)的个人技术博客,专注于SAP系统实施、行业方案咨询、IT技术与AI技术的研究与分享。

SAP Fiori ABAP CDS OData Dify Docker AI LLM

最新文章

条件主数据与定价 (★★★★)

#sap-sd #pricing #master-data

概览表

项目 要点
价格 PR00 — 基本价格条件类型
附加费/折扣 K007 — 客户折扣条件类型
运费 运费条件类型
税条件类型
条件记录 按关键字组合维护(客户/物料、客户、物料)
等级 数量相关或价值相关的定价
代表DC/Division 维护一次,跨DC/Division使用

四大条件类别

类别 示例 说明
价格 PR00 物料/服务的基本价格
附加费/折扣 K007 客户特定或物料特定的折扣
运费 各种 发货/运费成本条件
各种 税计算条件

条件记录

  • 关键字组合维护(如客户/物料、仅客户、仅物料)
  • 支持等级:数量相关或价值相关的定价
  • 销售订单中自动定价;可以手动更改但可限制

关键字组合(粒度)

  • 客户+物料(最具体)
  • 仅客户
  • 仅物料
  • 客户组+物料
  • 价格组+物料

代表分销渠道 / Division

  • 为一个代表DC/Division维护条件数据
  • 该数据适用于所有引用的DC/Division
  • 减少维护工作量

手动价格更改

  • 可以在销售订单中手动更改价格
  • 可通过Customizing或条件记录设置进行限制

考试题型

场景/关键词 答案
“4个条件类别?” 价格、附加费/折扣、运费、税
“可以在订单中手动更改价格吗?” 可以,除非在Customizing/条件记录中限制
“PR00是什么?” 基本价格条件类型
“K007是什么?” 客户折扣条件类型

相关笔记

物料主数据 (★★★)

#sap-sd #master-data

概览表

项目 要点
SD视图 Sales: General/Plant Data、Sales: Sales Org 1&2
交货工厂 来自物料主数据的Sales Org 1选项卡
Item Category Group 在Sales Org 2选项卡上;与销售凭证类型一起确定行项目类别
默认来源 物料主数据为销售凭证行项目提供默认值

SD相关视图

Sales: General/Plant Data

  • 装载组(用于Shipping Point确定)
  • 运输组
  • 可用性检查设置

Sales: Sales Org 1

  • 交货工厂(销售订单行项目的默认值)
  • 可用性检查指示符

Sales: Sales Org 2

  • Item Category Group(与销售凭证类型一起确定行项目类别)

SD处理的关键字段

字段 位置 用途
交货工厂 Sales Org 1 销售订单中的工厂确定
Item Category Group Sales Org 2 行项目类别确定
装载组 General/Plant Shipping Point确定
运输组 General/Plant 路径确定
可用性检查 Sales Org 1 / General/Plant ATP检查

物料主数据作为默认来源

  • 物料主数据为销售凭证行项目提供默认值
  • 默认值可以被客户物料信息记录或手动输入覆盖

相关笔记

输出与不完整日志 (★★)

#sap-sd #sales-doc

概览表

项目 要点
输出 业务伙伴之间交换的信息(订单确认、发票、EDI)
输出配置 按凭证类型通过输出组配置
不完整日志 列出不完整但处理所需字段
触发 保存时自动触发或通过编辑菜单触发
可定制 按字段配置;哪些字段触发日志

输出处理

  • 输出 = 业务伙伴之间交换的信息
  • 示例:订单确认、发票、EDI消息
  • 按凭证类型通过输出组配置
  • 在销售订单和交货凭证中均可用

输出类型

  • 打印输出(订单确认、发票)
  • EDI消息(电子数据交换)
  • 电子邮件通知

不完整日志

  • 列出不完整但进一步处理所需的字段
  • 保存时自动触发或通过编辑菜单访问
  • 按字段可定制 — 决定哪些字段是必填的
  • 在销售订单和交货凭证中均可用

用途

  • 防止不完整的凭证被进一步处理
  • 确保整个销售流程的数据质量
  • 提供缺失信息的检查清单

相关笔记

包装 (★★)

#sap-sd #shipping

概览表

方面 要点
位置 在Delivery或Shipment中
内容 将行项目分配给包装物料 → Handling Unit
嵌套 Handling Unit可以装入额外的包装中
Delivery包装 单个Delivery范围
Shipment包装 多Delivery范围(来自不同Delivery的行项目)

关键内容

包装将Delivery行项目分配给包装物料(例如纸箱PK-096)。结果是Handling Unit — 可追踪的物理包装单元。

Delivery包装 vs Shipment包装

特征 Delivery包装 Shipment包装
范围 单个Delivery 多个Delivery
时机 Delivery处理期间 Shipment处理期间
Shipping Unit 可以创建 从Delivery复制,不可更改
跨Delivery
💡Shipment包装允许将不同Delivery的行项目合并到一个容器中 — 适合合并运往同一目的地的货物。

考试题型

场景/关键词 答案
“可以包装多个Delivery的行项目吗?” 可以,在Shipment包装中
“什么是Handling Unit?” 通过将行项目分配给包装物料创建的物理包装单元

相关笔记

按单生产练习 (10题)

#practice #sap-sd #process-flow

相关概念

📌关键模式
关键词 答案
Inquiry → Quotation引用 复制任意数量即完全引用
Quotation → Order引用 仅复制全部数量时才完全引用
Item Category确定依据 Sales Doc Type + Item Category Group
MTO库存类型 Sales Order Stock(特殊库存)
装配处理 直接从Sales Order创建生产订单

问题1 - Inquiry vs Quotation [回忆]

Inquiry和Quotation的区别是什么?

📌显示答案
Inquiry:非约束性的客户对价格/交货时间的请求。”Valid to” = 处理截止日期。一旦任意数量被复制到Quotation即标记为完全引用。
Quotation:有效期内的法律约束性报价。仅当全部数量被复制到Order时才标记为完全引用。

问题2 - 没有Inquiry的Quotation [应用]

可以在没有收到Inquiry的情况下创建Quotation吗?

📌显示答案
可以。 Quotation可以独立创建,无需参考Inquiry。自动定价和可用性检查仍然适用(取决于Customizing)。

问题3 - 引用状态 [分析]

3件的Inquiry产生了2件的Quotation,再产生了1件的Sales Order。Inquiry项目和Quotation项目的引用状态分别是什么?

📌显示答案
Inquiry:完全引用(在标准系统中,任意部分数量复制到Quotation即足以标记为完全引用)。
Quotation:部分引用(仅1/2件被复制到Sales Order;需要全部数量才标记为完全引用)。

问题4 - Item Category确定 [回忆]

Sales Document中的Item Category如何确定?

📌显示答案
Sales Document Type + Item Category Group(来自Material Master,Sales: Sales Org 2选项卡)的组合确定。同一订单中的不同物料可以有不同的Item Category。

问题5 - Item Category控制 [回忆]

请列举至少4个由Item Category控制的功能。

📌显示答案
  1. 是否运行自动定价
  2. 行项目是否与Billing相关
  3. 行项目是否出现在Delivery上
  4. 不完整日志中显示哪些字段
  5. 行项目的Partner Functions
  6. 文本类型
  7. 是否可以创建计划行

问题6 - Item Category示例 [应用]

在标准订单(OR)中,Item Category Group为NORM的物料得到Item Category TAN。MTO特定组的物料会怎样变化?

📌显示答案
MTO物料得到Item Category TAK(MTO生产),控制Make-to-Order特定的行为,如个别客户需求传递到PP和Sales Order Stock管理。

问题7 - 无装配处理的MTO [回忆]

描述无装配处理的Make-to-Order流程。

📌显示答案
Sales Order → 个别客户需求 → 计划运行 → 计划订单(BOM展开、相关需求)→ 生产订单 → Goods Receipt到Sales Order Stock → Delivery → GI(减少Sales Order Stock)→ Billing。

问题8 - 装配处理优势 [分析]

有装配处理的Make-to-Order相比无装配处理有什么优势?

📌显示答案
有装配处理:仅单层BOM(预生产组件)。不需要计划运行。 生产订单直接从Sales Order创建。更快、更简单。确认的数量/日期立即返回到计划行。任何更改在Sales Order和生产订单之间双向同步。

问题9 - Sales Order Stock [应用]

Make-to-Order行项目Goods Receipt后,库存过账到哪里?Delivery时会发生什么?

📌显示答案
Goods Receipt过账到Sales Order Stock — 仅可用于该特定Sales Order的特殊库存。Delivery的Goods Issue时,此Sales Order Stock相应减少。

问题10 - 包装 [回忆]

Delivery中的包装与Shipment中的包装有什么区别?

📌显示答案
Delivery包装:将行项目分配给该单个Delivery的包装物料。
Shipment包装:可以将多个Delivery的行项目打包在一起。来自Delivery的Shipping Unit被复制,无法再单独更改。

📌模式总结
关键词 答案
Inquiry引用状态 复制任意数量即完全引用
Quotation引用状态 仅复制全部数量时才完全引用
Item Category逻辑 Doc Type + Item Category Group
MTO库存 Sales Order Stock(订单特定)
装配处理 直接创建生产订单,无需计划运行

FI集成 (★★★)

#sap-sd #billing #process-flow

概览表

方面 要点
触发 Billing Document创建(Invoice、Credit/Debit Memo)
结果 自动生成会计凭证
借记过账 客户应收科目
贷记过账 收入科目 + 销项税科目

科目确定

当Billing Document过账时,系统使用以下条件自动确定正确的总账科目:

条件 来源
Chart of Accounts Company Code
Sales Organization Billing Document
Payer科目分配组 Customer Master(国内/国外分类)
Material科目分配组 Material Master(服务/零售商品分类)
Account Key Pricing Procedure(价格、附加费、折扣要素)
⚠️科目确定需要与财务会计和成本会计团队协调。

过账概览

凭证类型 借记 贷记
标准Invoice 客户应收 收入 + 销项税
Credit Memo 收入 + 销项税 客户应收
Goods Issue COGS科目 库存科目
Incoming Payment 现金科目 客户应收

考试题型

场景/关键词 答案
“科目确定条件有哪些?” Chart of Accounts + SO + Payer组 + Material组 + Account Key
“Billing产生的FI过账?” 借记客户 / 贷记收入 + 税
“GI产生的FI过账?” 借记COGS / 贷记库存(按物料成本)

相关笔记

行项目类别 (★★★★)

#sap-sd #sales-doc

概览表

项目 要点
定义 控制Sales Document中行项目级行为
确定 Sales Document Type + Item Category Group(来自Material Master)
关键控制 定价、Billing相关性、Delivery相关性、不完整日志
附加控制 Partner Functions、文本类型、计划行创建
Item Category Group 在Material Master的Sales Org 2视图中维护
按项目变化 同一订单中的不同物料可以有不同的Item Category

Item Category控制什么

Item Category决定以下行项目级行为:

  • 定价:行项目是否参与定价
  • Billing相关性:行项目如何流入Billing
  • Delivery相关性:行项目是否触发Delivery
  • 不完整日志:哪些字段必须填写
  • Partner Functions:允许哪些合作伙伴
  • 文本类型:确定哪些文本
  • 计划行创建:是否生成计划行

确定逻辑

Item Category由以下组合确定:

  1. Sales Document Type(来自Order抬头)
  2. Item Category Group(来自Material Master,Sales Org 2视图)

示例

Sales Doc Type Item Category Group Item Category 说明
OR(标准订单) NORM TAN 标准项目
OR(标准订单) MTO TAK Make-to-Order项目
OR(标准订单) Free item TANN 免费项目
Inquiry NORM AFN Inquiry项目

同一订单中的不同物料可以有不同的Item Category,根据物料的Item Category Group逐项确定。

考试题型

场景/关键词 答案
“Item Category如何确定?” Sales Doc Type + Item Category Group(来自Material Master)
“一个订单可以有不同的Item Category吗?” 可以 — 按行项目
“Item Category控制什么?” 定价、Billing、Delivery相关性、不完整日志、Partner、文本、计划行
“Item Category Group在哪里维护?” Material Master,Sales Org 2视图
“NORM组在标准订单映射到?” TAN(标准项目)

相关笔记

可用性检查场景 (★★★★)

#sap-sd #availability

概览表

项目 要点
场景1 在请求日期确认 — 库存充足
场景2 在更晚日期确认 — Complete Delivery,Forward Scheduling
场景3 Partial Delivery — 拆分为多个计划行
Backorder处理 手动或自动(Rescheduling);按Delivery Priority排序
检查范围显示 显示已考虑的入库/出库移动,RLTI包含情况
MM需求 Sales Order创建的需求在库存/需求清单中可见

场景1:在请求日期确认

库存 + 入库移动 − 出库移动 ≥ 订单数量 → 全部数量在请求日期确认。

场景2:在更晚日期确认

库存不足 + Complete Delivery协议触发 Forward Scheduling,从下一个可用日期开始。系统计算可以确认全部数量的最早日期。

场景3:Partial Delivery

部分库存可用 + 允许部分交货 → 系统将订单拆分为计划行:

  • 在请求日期确认的数量
  • 剩余数量在更晚日期确认

Backorder处理

当订单数量未完全确认时:

  • 手动Backorder处理:用户重新分配可用库存
  • Rescheduling(自动):系统根据客户主数据中的Delivery Priority重新分配
  • 订单按Delivery Priority排序确定分配顺序

检查范围显示

显示在检查中考虑了哪些入库和出库移动,以及补货提前期是否包含在计算中。

MM中的需求

Sales Order创建的需求在库存/需求清单(MD04)中可见。需求日期等于Sales Order中的Material Availability Date。

考试题型

场景/关键词 答案
“什么时候触发Forward Scheduling?” Backward Scheduling显示数量不足时
“什么是Backorder?” 订单行项目数量未确认或交货日期未满足
“什么日期传递到MM需求?” Material Availability Date
“Backorder如何排序?” 按客户主数据中的Delivery Priority
“检查范围显示什么?” 已考虑的入库/出库移动,RLTI包含情况

相关笔记

可用性检查基础 (★★★★)

#sap-sd #availability

概览表

项目 要点
配置 物料主数据(Sales/Plant视图,Availability Check字段)+ Customizing
检查日期 Material Availability Date(由Backward Scheduling计算)
检查范围 Customizing:库存类型、入库移动、出库移动
工厂确定 1. Customer-Material Info → 2. Ship-to Customer Master → 3. Material Master
需求传递 Sales Order → MM/PP需求;驱动采购
交货协议 Complete vs Partial — 来自客户主数据和Customer-Material Info

可用性检查配置

在物料主数据的Sales/Plant视图中配置(Availability Check字段),结合Customizing设置定义检查规则。

检查始终在 Material Availability Date 上执行,该日期由Backward Scheduling从请求交货日期逆推计算。

检查范围(Customizing)

可用性检查的范围在Customizing中定义,控制:

  • 库存类型:安全库存、转储库存、质检库存
  • 入库移动:采购订单、生产订单
  • 出库移动:Sales Orders、MM预留

工厂级检查

标准交货工厂按以下优先级顺序提出:

  1. Customer-Material Info Record
  2. Ship-to Customer Master
  3. Material Master

需求传递

Sales Order为MM/PP创建需求。这驱动采购流程。传递类型影响可用性检查的执行方式。

Complete vs Partial Delivery协议

  • 来源:客户主数据(抬头级)和Customer-Material Info(行项目级)
  • 部分交货指标
    • _ — 允许部分交货
    • A — 数量>0(允许部分交货)
    • B — 仅一次交货
    • C — 仅完整交货
    • D — 后续交货无限制
  • 影响检查结果:部分交货允许跨计划行拆分;完整交货意味着全部数量必须在同一日期确认

考试题型

场景/关键词 答案
“ATP检查在哪个日期执行?” Material Availability Date
“什么影响可用性检查范围?” Customizing:库存类型、入库/出库移动
“部分交货指标C的含义?” 仅完整交货
“交货工厂如何提出?” Customer-Material Info → Ship-to Master → Material Master
“部分交贷指标控制什么?” 订单数量是否可以拆分到多次交货

相关笔记

装配处理 (★★★)

#sap-sd #process-flow

概览表

项目 要点
MTO概念 为特定Sales Order生产物料,而非从库存获取
无装配处理 需求 → 计划运行 → 计划订单 → 生产订单
有装配处理 直接从Sales Order创建生产订单(无需计划运行)
成本管理 每行项目收集成本/收入;CO-PA中计划vs实际
Sales Order Stock 仅用于该特定Sales Order的特殊库存
Variant Configuration 具有特征/值/附加费的可配置物料

Make-to-Order(MTO)

为特定Sales Order生产物料而非从仓库库存获取。创建个别客户需求并传递到PP。

无装配处理

1
2
Sales Order → 需求 → 计划运行 → 计划订单 → 生产订单
→ 确认数量/日期返回到Sales Order

有装配处理

1
2
Sales Order → 单层BOM展开 → 生产订单(直接)
→ 确认数量/日期返回到计划行

关键区别:生产订单直接从Sales Order创建 — 不需要计划运行。确认的数量和日期返回到Sales Order计划行。

成本管理

  • 成本和收入按行项目收集到控制对象中
  • 计划成本vs实际成本在获利能力分析(CO-PA)中结算

Sales Order Stock

仅可用于该特定Sales Order的特殊库存:

  • Goods Receipt → 过账到Sales Order Stock
  • Delivery的Goods Issue → 减少Sales Order Stock

Variant Configuration

具有特征和值的可配置物料。配置产生的附加费影响定价。

考试题型

场景/关键词 答案
“有无装配处理的区别?” 有:直接从Sales Order创建生产订单;无:需要计划运行
“什么是Sales Order Stock?” 仅可用于该特定Sales Order的特殊库存
“MTO与MTS的区别?” MTO:为特定订单生产;MTS:为仓库库存生产
“装配处理跳过了什么?” 计划运行 — 直接创建生产订单

相关笔记

0%