SAP 组织结构:公司代码、科目表与控制范围之间的关系
本文解释了 SAP S/4HANA 如何通过组织对象将财务会计 (FI) 与管理会计 (CO) 联系起来。
本文内容
简明答案
在 SAP 中,公司代码 (Company Code) 是财务会计 (FI) 的核心单元,用于记录用于外部报告的交易。科目表 (Chart of Accounts, COA) 是所有可用总账 (G/L) 科目的主列表。总账 (G/L) 是分配给特定公司代码的这些科目中的特定子集。控制范围 (Controlling Area) 是用于内部成本和收入管理的管理会计 (CO) 对象;只要所有公司代码都使用相同的运营科目表和财政年度变体,它就可以包含多个公司代码。
SAP 组织层级的思维模型
要理解这些对象之间的关系,请想象一个数据粒度和用途的层级结构。在定义的最顶层是科目表,它充当所有可能科目的通用字典。在其下方,公司代码作为法律实体,使用这些科目的特定选择来构建其总账。最后,控制范围充当管理伞。它允许企业将来自多个法律实体(公司代码)的成本和收入汇总到单一的管理视图中,前提是这些实体通过共享的科目表使用相同的“会计语言”。
实操案例:多实体管理
考虑一家拥有两个子公司的全球化集团:一个德国实体(公司代码 1010)和一个美国实体(公司代码 1710)。这两个子公司都属于同一个母集团,并在单一控制范围 (A000) 下进行管理。
该集团使用一个主科目表 (COA_GLOBAL) 以确保一致性。德国实体使用 COA_GLOBAL 的子集来创建其本地财务报表。美国实体使用同一科目表 COA_GLOBAL 的不同子集来进行其本地报表。由于它们共享相同的科目表和财政年度变体,控制范围可以无缝地汇总来自德国和美国实体的费用数据,用于内部管理报告。
// Illustrative Data Mapping
// Chart of Accounts: COA_GLOBAL
// |
// |-- G/L Account 400000 (Travel Expense)
// | |-- [COA Level] Description: Travel Expense
// | |-- [Company Code 1010 Level] Currency: EUR
// | |-- [Company Code 1710 Level] Currency: USD
// |-- G/L Account 500000 (Rent Expense)
//
// Controlling Area: A000
// |-- Assigned Company Codes: 1010, 1710预期结果
如果配置正确,在公司代码 1010 中过账的交易将自动触发控制范围 (CO) 中相应的过账。这使得管理层能够看到实时的成本分配。财务报表(资产负债表/损益表)在公司代码层级生成,而成本中心报告和边际分析则在控制范围层级生成。
诊断:识别配置不匹配
如果用户尝试将公司代码分配给控制范围时收到错误,问题很可能在于基础设置不匹配。为了实现成功链接,公司代码和控制范围必须共享相同的运营科目表和相同的财政年度变体。如果这些设置不匹配,系统将无法协调财务会计和管理会计模块之间的期间或科目结构。
常见错误
一个常见的错误是将科目表层级与公司代码层级混淆。如果管理员在科目表层级封锁了一个总账科目,那么该科目在整个系统中的每一个公司代码中都将无法使用。相反,如果他们只需要阻止某个特定法律实体的过账,他们必须仅在公司代码层级应用封锁。另一个错误是尝试将具有不同运营科目表的多个公司代码分配给同一个控制范围,这在系统架构中是被禁止的。
决策标准
在设计组织结构时,请使用以下标准:1. 如果您需要跨这些实体进行集成管理报告,请为多个公司代码使用单一控制范围。2. 确保该控制范围内的所有公司代码都使用相同的运营科目表,以实现这种集成。3. 对于仅属于特定法律实体的设置(如本地货币或税码),请使用公司代码层级;对于必须在整个企业范围内保持统一的设置(如科目描述和科目类型),请使用科目表层级。
范围与限制
本解释适用于 SAP S/4HANA 和 ECC 环境。它侧重于 FI 和 CO 组织对象之间的关系。它不涵盖次级成本要素的配置、经营范围 (Operating Concern,用于边际分析) 的细节,也不涵盖在 S/4HANA 通用日记账 (Universal Journal) 环境中设置分类账的技术步骤。它假设了一个 FI 和 CO 已集成的标准企业结构。
检查清单
- 公司代码是否使用与控制范围相同的运营科目表?
- 公司代码是否使用与控制范围相同的财政年度变体?
- 总账科目是否已扩展到用于本地货币设置的公司代码段?
适用范围
不涵盖 SAP S/4HANA 中的具体配置步骤;不包括次级成本科目的细节。