呼和浩特市网站建设_网站建设公司_RESTful_seo优化
2026/1/10 13:25:26 网站建设 项目流程

这是一个非常经典且重要的SAP MM(物料管理)与FIM(财务会计)集成问题。下面我将为您详细分析SAP采购验收(通常指收货)所涉及的库存表、会计凭证生成逻辑以及表间关联。

核心摘要

  1. 库存现有量:主要存储在MARD(库存数量) 和MBEW(库存价值) 表中。

  2. 物料数量与金额

    • 数量:实时存储在MARD表。

    • 金额:实时存储在MBEW表。

  3. 会计凭证生成:基于物料类型配置的自动记账规则,在收货时系统自动生成“原材料/库存商品”科目借方和“GR/IR”科目贷方的会计凭证。

  4. 表间关联:通过关键字段如MATNR(物料号)、WERKS(工厂)、LGORT(库存地点) 等,并经由MKPF/MSEG(物料凭证) 和BKPF/BSEG(会计凭证) 进行关联。


详细分析

1. 库存现有量存放在哪个表?

库存现有量是一个综合概念,分为数量价值,它们存储在不同的表中。

表名表描述关键字段存储的信息
MARD物料仓储位置数据MATNR(物料号)
WERKS(工厂)
LGORT(库存地点)
库存数量
-LABST(非限制使用库存)
-UMLMC(在途库存)
-INSME(质检库存)
-SPEME(冻结库存)
MBEW物料评估(价值)数据MATNR(物料号)
BWKEY(评估范围,通常=工厂)
库存价值
-STPRS(标准价格)
-VERPR(移动平均价)
-LBKUM(当前库存数量 - 按评估范围)
-SALK3(总库存价值)
-VPRSV(价格控制指示符 - S标准价 / V移动平均价)

关键点

  • MARD是按库存地点级别存储数量的,所以查询具体地点的库存必须使用此表。

  • MBEW是按评估范围级别存储价值和数量的,它不区分库存地点。LBKUM是整个工厂的数量总计。

  • 我们通常说的“库存现有量”是MARD-LABST(非限制使用库存)。


2. 物料数量以及金额在哪个表?

如上所述:

  • 数量:主要在MARD表。

  • 金额:主要在MBEW表。

但是,MARD表只有数量,没有金额。要计算某个物料的库存金额,通常的逻辑是:

  • 对于标准价(S)物料库存金额 = MARD-LABST * MBEW-STPRS

  • 对于移动平均价(V)物料库存金额 = MBEW-SALK3(这个值本身就是以移动平均价计算的总价值)


3. 采购收货如何产生会计凭证?

这是SAP MM-FI集成的核心体现。其过程完全是自动的,由系统后台配置驱动。

a. 核心配置 - 自动记账(T-CODE: OBYC)

在后台配置(SPRO)中,路径为:物料管理 -> 评估和科目分配 -> 科目确定 -> 无向导的科目确定 -> 配置自动记帐。这里定义了不同交易码(Transaction Key)对应的总账科目。

与采购收货最相关的交易码是:

  • GBB:库存过帐 offset

  • WRX:GR/IR 清算

b. 收货时的过账逻辑

假设公司采购一个原材料(物料类型为ROH),采用标准价格体系。

  1. 用户操作:用户在MIGO中参照采购订单执行收货,输入数量(比如10个)。

  2. 系统动作 - 物料账

    • 系统根据采购订单中的价格(或物料主数据中的标准价)计算收货价值。

    • 系统产生物料凭证,记录数量的移动。表MSEGMKPF被更新。

    • 同时,MARD-LABST增加10,MBEW-LBKUMMBEW-SALK3也相应更新。

  3. 系统动作 - 总账账

    • 系统根据OBYC中的配置,自动生成会计凭证:

      • 借方科目:查找GBB->BSX(库存物料收货)。这通常对应“原材料”或“库存商品”科目。

      • 贷方科目:查找WRX。这对应“GR/IR”( Goods Receipt / Invoice Receipt,收货/收票清算)科目,这是一个清项管理的科目。

生成的会计凭证示例

科目科目描述借方金额贷方金额
14010101原材料 - 主要材料1,000.00
22010101GR/IR 科目1,000.00

会计分录
借:原材料 1,000.00
贷:GR/IR 1,000.00

c. 后续发票校验(MIRO)

当收到供应商发票时:

  • 如果发票金额也是1,000,则MIRO过账:

    • 借:GR/IR 1,000.00

    • 贷:应付账款 1,000.00

  • 这样,GR/IR科目就被清平了。

  • 如果发票价格与收货时的暂估价格有差异,系统会根据物料的价格控制方式(S或V)进行处理,可能产生价格差异(计入OBYC中的PRD科目)。


4. 如何和库存的表关联?

整个采购收货的业务流,通过一系列关键字段将库存表、物料凭证、会计凭证串联起来。

关联链条:MARD/MBEW<-MSEG<-BSEG

假设我们要追溯一笔收货业务的所有数据:

  1. 起点:库存表 (MARD/MBEW)

    • 你在MARD中看到物料 M-100 在工厂 1000、库存地点 0001 有 100个库存。你想知道这100个是什么时候、通过哪张单子收进来的。

  2. 关联到物料凭证 (MSEG/MKPF)

    • 通过MARD-MATNRMARD-WERKSMARD-LGORT去查询MSEG表。

    • MSEG表的关键字段:

      • MATNR(物料号)

      • WERKS(工厂)

      • LGORT(库存地点)

      • BWART(移动类型) -101代表采购订单收货

      • MBLNR(物料凭证编号)

      • ZEILE(物料凭证行项目)

      • DMBTR(以本位币计的金额)

      • SHKZG(借贷标识) - 'H' 贷, 'S' 借

      • BELNR(会计凭证编号)<- 这是关联到财务凭证的关键!

    • 你可以找到一条BWART = 101的记录,其数量为100,这就是库存增加的来源单据行。

  3. 关联到会计凭证 (BSEG/BKPF)

    • MSEG-BELNR(会计凭证编号) 和MSEG-GJAHR(会计年度) 可以直接关联到BSEGBKPF

    • BSEG表的关键字段:

      • BELNR(会计凭证编号)

      • GJAHR(会计年度)

      • BUZEI(行项目号)

      • BSCHL(记账码)

      • HKONT(总账科目) - 这里可以看到具体的“原材料”和“GR/IR”科目

      • DMBTR(本位币金额)

      • SHKZG(借贷标识)

    • 通过此关联,你就能看到收货时生成的财务会计分录详情。

总结关联路径
MARD/MBEW(库存现状)<--(通过MATNRWERKSLGORT)--<MSEG(库存移动历史)<--(通过BELNRGJAHR)--<BSEG(财务过账明细)<--(通过BELNRGJAHR)--<BKPF(财务凭证抬头)

实际查询示例

如果你想查询某物料最近一次的收货情况,可以执行类似下面的SQL逻辑(概念性SQL):

sql

-- 1. 查看当前库存 SELECT matnr, werks, lgort, labst FROM mard WHERE matnr = 'M-100' AND werks = '1000'; -- 2. 找到对应的物料凭证 SELECT mblnr, mjahr, zeile, bwart, menge, belnr, gjahr FROM mseg WHERE matnr = 'M-100' AND werks = '1000' AND lgort = '0001' AND bwart = '101' -- 采购收货 ORDER BY cpudt DESC; -- 按过账日期倒序 -- 3. 使用上一步找到的 belnr 和 gjahr 查询会计凭证 SELECT belnr, gjahr, buzei, bschl, hkont, dmbtr, shkzg FROM bseg WHERE belnr = '会计凭证号来自MSEG' AND gjahr = '会计年度来自MSEG';

通过以上分析,您应该对SAP采购验收所涉及的库存、财务表以及它们之间的集成逻辑有了一个全面而深入的理解。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询