> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alforse.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 维度与成本中心

> 为凭证行打上位置、部门、客户、成本中心及其他轴的标签，让财务无需增加科目就能对总账进行切片分析。

报表维度是 Alforse 附加到单个凭证行上的一个轴，例如位置、部门或客户。财务团队使用维度，从多个属性报告同一科目，而不必为每种组合创建科目。**成本中心**对此做了扩展：它既是成本归属的层级结构，也是可以用于报告的维度。

两者都位于[会计](https://docs.alforse.com/zh/docs/reference/accounting.md)模块中，在每个公司集团内只需定义一次，与科目表放在一起。

## 概念

### 维度

每个维度都有**名称**和**实体类型**。实体类型决定维度的值来自哪里：

FieldType

<details>
  <summary>**实体类型维度**`来自源表`</summary>

  值是现有表的行。`Location` 维度的值取自您的位置；`Employee` 维度取自您的人员。您无需手动输入这些值，因为它们由过账已引用的记录解析得出。
</details>

<details>
  <summary>**自定义维度**`来自维度值`</summary>

  实体类型为 `Custom`。您自己以 `dimensionValue` 行的形式输入允许的值（项目 A、项目 B 等）。适用于 Alforse 尚未以表形式保存的轴。
</details>

可用的实体类型有 `CostCenter`、`Custom`、`Customer`、`CustomerType`、`Department`、`Employee`、`FixedAssetClass`、`Item`、`ItemPostingGroup`、`Location`、`Process`、`Project`、`ScrapReason`、`Supplier`、`SupplierType` 和 `WorkCenter`。

每个维度还有两个标志：

| 标志 | 效果 |
| - | - |
| **启用** | 只有启用的维度才会附加到新过账。清除它会停止在该轴上打标签。 |
| **必需** | 将该维度标记为必填。 |

维度名称在公司集团内唯一。

### 范围

NOTE

**维度属于公司集团；标签属于公司**

维度及其值由公司集团中的每个公司共享。写入凭证行的标签按公司划分范围，与凭证本身一致。

### 凭证行上的标签

标签是一对：一个维度和一个**值 ID**。一个凭证行对每个维度最多持有一个值。

值 ID 指向什么取决于实体类型。在 `Custom` 维度上，它标识该维度自己的某个值；在实体类型维度上，它是底层记录的 ID，例如位置、客户或成本中心。判断到哪张表中查找，由应用程序代码完成，而不是由数据库引用完成。

## 设置维度

1. 前往**会计 → 维度**。
2. 创建维度，并为它指定唯一的**名称**。
3. 选择其**实体类型**：位置或客户这样的源表类型，或**自定义**。
4. 对于**自定义**维度，添加允许的值。
5. 保持维度**启用**，使过账开始在该维度上打标签。

定义维度就是为该轴开启打标签。它适用于以后的过账；已经过账的行不会被追溯打标签。

## 过账如何打标签

您不需要手动为业务过账打标签。当发货、收货、发票、库存移动或其他单据过账时，Alforse 会：

1. 加载公司集团所有**启用**的维度，按实体类型建立索引。
2. 根据来源单据构建每个凭证行，来源单据已经知道该行背后的客户、物料、物料过账组、位置和成本中心等信息。
3. 对于其中每个信息，**仅当存在该实体类型的启用维度时**才附加标签。标签的值是该实体的 ID。

例如，一旦存在 `Location` 维度，发货、收货、发票和库存过账就会用来源单据上已有的位置为每行打标签。无需任何人再次输入位置。

### 手工凭证

NOTE

**手工凭证采用您指定的标签**

手工录入的凭证没有可供解析标签的来源单据，因此其行带有您在录入表单中选择的维度值。保存一行的标签会将其整体替换：Alforse 清除该行现有的标签并插入新的一组。您也可以用同样的方式为已过账凭证的行重新打标签。

## 成本中心

**成本中心**是承担成本的命名组织单元，例如工厂、生产线或服务团队。在**会计 → 成本中心**下管理它们。

| 属性 | 含义 |
| - | - |
| **名称** | 必填。 |
| **负责人**（`ownerId`） | 必填。对该成本中心负责的用户。 |
| **父级**（`parentCostCenterId`） | 可选。让子中心汇总到父中心，形成层级结构。 |

### 两种角色

* **独立的树**，按公司划分范围，您可将其分配给采购行和其他记录，把支出归属到负责的单元。
* **维度轴。** 定义实体类型为 `CostCenter` 的维度后，过账就开始用来源单据所带的成本中心为其凭证行打标签，与任何其他实体类型维度一样。成本中心损益报告就是这样工作的。

凭证行本身没有成本中心列。成本中心只能以维度标签的形式进入分类账，标签的值就是成本中心的 ID，因此仅有独立的树不会在总账上留下任何内容。

## 用维度做报告

由凭证行生成的报表可以按维度值分组或筛选：按位置的销货成本、按部门的费用、按客户的收入。这使科目表保持精简。您过账到同一个销货成本科目，并用 `Location` 维度对其进行细分。

HEADS UP

**核心报表不按维度切片**

试算平衡表、资产负债表和利润表始终报告整个公司的余额，不接受维度筛选。维度回答的是“该科目的余额中，有多少属于每个位置、部门或成本中心”，而不是“为某个项目重新编制资产负债表”。

由于维度报表读取已过账的凭证行，只有在某期间的过账最终确定之后才可靠。关于如何对某月余额生成快照，请参见[期间结账](https://docs.alforse.com/zh/docs/reference/period-close.md)。

## 故障排除

| 症状 | 原因 | 解决办法 |
| - | - | - |
| "Owner is required"（需要负责人） | 保存成本中心时没有指定负责人。 | 选择负责的用户，然后保存。**名称**同样必填。 |
| "Name is required" / "Entity type is required"（需要名称 / 需要实体类型） | 保存维度时缺少名称或实体类型。 | 输入唯一的名称并选择实体类型。 |
| 凭证行在某个轴上没有标签 | 该实体类型没有维度，或维度未启用。 | 定义该维度并保持启用。只有以后的过账才会打标签。 |
| 成本中心没有出现在报表中 | 没有定义 `CostCenter` 维度。 | 创建实体类型为 **CostCenter** 的维度。 |
| 维度筛选不改变试算平衡表或资产负债表 | 核心报表按设计忽略维度。 | 使用由凭证行生成的报表。 |
| 重新保存后手工凭证的标签消失了 | 保存会替换一行的标签，而不是合并。 | 用完整的标签集重新保存该分录。 |

## 相关内容

**会计与分类账**

科目表、凭证，以及维度标签所依附的过账。

[Open](https://docs.alforse.com/zh/docs/reference/accounting.md)

**期间结账**

在按维度分析之前，某月的余额是如何最终确定的。

[Open](https://docs.alforse.com/zh/docs/reference/period-close.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.