SAP拆分估值与BWTAR字段逻辑及物料估值状态历史变更问询
SAP库存报表开发:拆分估值判断与历史状态问题
一、判断物料是否启用拆分估值的正确字段
- 用
MARC表的BWTTY(估值类别)字段即可:该字段不为空时,说明对应工厂下的物料启用了拆分估值;为空则未启用。MBEW表的BWTTY是从MARC复制而来,两者均可使用,但优先选MARC——它是物料工厂级配置的核心表。
二、物料拆分估值状态的历史变化可能性
- 物料的拆分估值状态确实会发生变更:比如初始未启用,后续在物料主数据中配置了估值类别;或是原本启用了拆分估值,之后又取消配置。
- 但
MARCH(MARC历史表)和MBEWH(MBEW历史表)确实未记录BWTTY字段的历史值,这是SAP标准表的设计局限。若需追溯历史状态,可参考两个思路:- 查询物料主数据的更改日志(表
CDHDR+CDPOS),通过对象类MATERIAL、字段名BWTTY筛选,获取该字段的变更时间与前后值。 - 结合库存交易历史记录(
MKPF+MSEG),若某段时间的库存移动记录包含BWTAR值,说明当时该物料已启用拆分估值。
- 查询物料主数据的更改日志(表
三、报表逻辑的补充提示
- 你之前的报表逻辑可行,但需注意两个细节:
- 未启用拆分估值时,
MBEW的BWTAR为空值,关联MARD时仅用MANDT+MATNR+BWKEY即可匹配到对应单位价值。 - 启用拆分估值时,
MCHB的BWTAR对应MBEW的键值,且MCHB存储的是批次级库存数量,需先按库存地点汇总批次数量,再乘以对应单位价值,才能得到库存地点级的总价值。
- 未启用拆分估值时,
内容的提问来源于stack exchange,提问作者Enrico
相关产品推荐
相关产品推荐

