使用内联序列/批次编辑器

内联序列号/批次编辑器让您可以直接在库存单据的物料行上添加和管理序列号与批次——无需弹出单独的对话框。您可以在工作位置看到一个简洁的表格,所有条目在保存单据时一并保存。


如何启用

  1. 打开库存设置(在搜索栏中搜索“库存设置”)。
  2. 进入序列号与批次物料部分。
  3. 确保“使用序列号/批次字段”未被勾选。
  4. 勾选“使用内联序列号/批次编辑器”复选框。
  5. 点击保存

就这样——该功能现在已为网站上的所有人启用。(新安装时默认启用。)

提示:如果启用后未看到编辑器,请刷新一次浏览器页面。


在哪里看到它

打开以下任一单据,然后点击物料行展开。您会在行内找到序列号/批次条目表格(适用于有序列号或批次的物料):

  • 采购收货单和采购发票(包括拒收数量部分)
  • 销售发票、POS 发票和交货单(包括捆绑/包装物料)
  • 库存录入
  • 库存盘点
  • 分包收货单(物料和供应物料)
  • 拣货单
  • 资产资本化和资产维修

为什么使用它?(优势)

  • 一切尽在一处——直接在物料行上添加、编辑和删除序列号或批次。无需在弹出窗口间来回切换。
  • 更快速——您输入时更改会被收集,保存单据时一次性保存到系统,而不是每次更改都调用一次服务器。添加 20 个批次只需一次保存,而非 40 次单独更新。
  • 不会意外保存——在点击单据上的保存按钮之前,您的序列号/批次更改仅显示在屏幕上。一旦有任何更改,保存按钮会立即出现,因此您始终知道有未保存的工作。
  • 轻松处理大量列表——条目以每页 10 条的形式显示,并配有简单的导航按钮,即使有数百个序列号也能轻松浏览。
  • 自动创建缺失的序列号和批次——在入库单据(如采购收货单)上,如果您输入一个尚不存在的序列号或批次,系统会在保存时自动创建它。

如何使用

添加条目

  1. 点击物料行展开,找到序列号/批次条目表格。
  2. 点击添加行
  3. 从下拉列表中选择序列号/批次(或输入新值),然后输入数量。
  4. 根据需要重复添加条目,然后保存单据。

物料数量以及表格下方显示的“总数量”会随着您添加条目自动更新。

编辑条目

  • 直接点击表格中的序列号、批次号或数量单元格,输入新值——就像编辑电子表格单元格一样。

删除条目

  • 勾选一行或多行开头的复选框,然后点击删除行
  • 要清空所有内容,勾选表头中的复选框(全选),然后点击全部删除。如果删除所有条目并保存,关联的序列号和批次捆绑包也会被移除。

⋯(三点)菜单

在表格右下角,您会找到一个包含额外工具的菜单:

  • 自动获取序列号/批次号 (出库单据,如交货单)——输入所需数量,系统会根据库存设置中的选取序列号/批次依据规则(先进先出、后进先出或有效期)自动为您选取序列号/批次。它会替换表格中当前的内容,跳过已预留的库存,并为您保存单据。
  • 扫描序列号/扫描批次号——使用条码扫描器(或输入后按回车)逐个添加条目。再次扫描同一批次只会增加其数量。
  • 从范围创建序列号 (序列号物料)——输入类似 SN-01::10 的范围,一步添加 SN-01 到 SN-10。
  • 下载——将当前条目(或空白模板)下载为 CSV 文件。
  • 上传——填写 CSV 模板并上传,可一次加载大量条目。在入库单据上,缺失的序列号和批次会自动创建。

翻页

当条目超过 10 条时,使用表格底部的箭头翻页,或直接输入页码。您可以使用外侧箭头按钮直接跳转到第一页或最后一页。


须知事项

  • 编辑器仅在单据处于草稿状态时显示。提交后,条目会像往常一样被锁定。
  • 如果某物料行勾选了“使用序列号/批次字段”,则该行保留简单的文本字段,内联表格会对其隐藏。
  • 更喜欢旧的弹出对话框?在库存设置中取消勾选 “使用内联序列/批次编辑器”,即可恢复之前的行为。

特定项目

特定方物料用于限制特定交易方可以使用哪些物料、物料组或品牌。交易方可以是客户供应商。当企业希望某些客户或供应商仅交易经批准的物料集时,此功能非常有用。

何时使用特定方物料

  • 当客户仅允许购买选定的物料、物料组或品牌时使用。
  • 当供应商仅用于采购选定的物料、物料组或品牌时使用。
  • 当不同交易方因合同、区域规则、合规要求或商业协议而有不同的产品限制时使用。
  • 用于减少创建销售和采购交易时的错误。

查找位置

打开 Awesomebar 并搜索特定方物料,或导航至销售 > 物料与定价 > 特定方物料。列表视图显示所有已配置的特定方物料规则。

工作原理

特定方物料规则结合了两个决策:

  • 交易方:选择规则适用于客户还是供应商,然后选择具体的交易方。
  • 限制依据:选择限制是基于物料、物料组还是品牌。

保存规则后,ERPNext 可以使用它来控制该交易方在相关销售或采购交易中允许使用的物料。

创建规则

  1. 点击添加特定方物料
  2. 选择交易方类型:客户或供应商。
  3. 选择交易方名称
  4. 选择限制物料依据:物料、物料组或品牌。
  5. 依据值中选择对应的值。
  6. 保存文档。

示例

如果Mirae Fashion仅允许交易桌子这个物料,则创建具有以下内容的特定方物料:

  • 交易方类型:客户
  • 交易方名称:Mirae Fashion
  • 限制物料依据:物料
  • 依据值:桌子

您也可以通过选择物料组品牌而不是单个物料来创建更广泛的规则。

良好实践

  • 当限制非常具体时,使用物料
  • 当交易方允许交易整个产品类别时,使用物料组
  • 当限制遵循品牌级协议时,使用品牌
  • 避免为同一交易方设置重复或重叠的限制,以保持规则易于审计。
  • 保存规则后,在销售或采购交易中测试该规则。
  • 物料
  • 客户
  • 供应商
  • 物料组
  • 品牌

管理物料转移与在途货物

在途货物

当库存已离开一个仓库但尚未到达目标仓库时,使用“在途货物”功能。在 ERPNext 中,这通过物料转移的库存凭证来处理。出库凭证将库存从发出仓库移出并转入在途状态。后续的入库凭证再将同一批库存从在途状态移入接收仓库。

当货物实际在仓库、分支机构、门店或地点之间运输,且需等待接收方确认库存后,转移才算完成时,此功能非常有用。

工作原理

  • 发送至仓库: 记录货物已从源仓库发出,目前处于在途状态。
  • 在仓库接收: 记录货物已到达目标仓库,并应添加到其库存中。
  • 在途货物: 在货物处于两个仓库之间时,将其库存单独管理。

在当前 ERPNext 库存凭证表单中,在途货物流程可通过物料转移凭证上的添加到在途复选框和库存凭证(出库在途)引用字段查看。

创建出库转移

  1. 前往库存凭证并创建新的库存凭证。
  2. 库存凭证类型设置为物料转移
  3. 在物料表格中,选择源仓库、物料和要发送的数量。
  4. 启用添加到在途
  5. 保存并提交库存凭证。

选择物料转移时,ERPNext 会在库存凭证上显示在途货物字段。

当转移应先进入在途货物状态,而非直接接收至目标仓库时,请启用添加到在途

创建入库转移

  1. 创建另一个物料转移库存凭证。
  2. 使用库存凭证(出库在途)选择出库的在途货物库存凭证。
  3. 在物料表格中设置接收仓库。
  4. 保存并提交库存凭证。

入库凭证完成转移。库存从在途货物中移除,并添加到接收仓库。

示例

一家公司从孟买仓库德里仓库发送 10 个单位。

  1. 孟买团队创建出库物料转移,并启用添加到在途
  2. 该库存不再显示在孟买仓库中,而是显示为在途状态。
  3. 当德里团队收到货物后,他们针对出库在途货物凭证创建入库物料转移。
  4. 库存被添加到德里仓库。

何时使用在途货物

  • 仓库间的转移需要时间才能完成。
  • 发送和接收地点由不同团队处理。
  • 您需要查看已发出但尚未收到的库存情况。
  • 您希望接收仓库在确认收货后,库存才变为可用。

重要说明

  • 仅在仓库间移动时使用在途货物,不用于销售交货或采购收货。
  • 出库和入库库存凭证应使用相同的物料和数量,除非有记录在案的差异。
  • 在货物实际到达目标仓库之前,不要使用入库凭证。
  • 如果转移是即时的,不需要在途阶段,请使用普通的物料转移,不要启用添加到在途

如何在ERPNext中创建和打印形式发票

ERPNext 没有专门的“形式发票”单据。要打印形式发票,您可以通过打开一个报价单销售订单,将其打印标题更改为“形式发票”,然后打印该单据来模拟实现。

请按照以下确切步骤为客户打印形式发票:

1. 创建并打开单据

  • 导航到您要发送的报价单或销售订单。
  • 打开您要打印的具体单据记录。

2. 更新打印标题

  • 向下滚动到报价单或销售订单中的“打印设置”部分。
  • 在“打印标题”字段中,点击下拉菜单并选择“创建新的打印标题”。
  • 输入“形式发票”作为新标题名称并保存。
  • 从下拉菜单中选择这个新创建的“形式发票”标题,然后保存您的单据。

3. 打印或保存为 PDF

  • 点击屏幕左上角的菜单按钮(三个点)或打印图标。
  • 如果您需要显示公司徽标和联系信息,请确保选择了正确的信笺抬头。
  • 点击“PDF”下载到您的电脑,或点击“打印”直接发送到您的硬件设备。

其他自定义资源

  • ERPNext 打印设计器教程(视频指南)
  • Frappe 自定义打印格式指南(官方文档)

值不同步错误:库存余额与库存账户余额同步

当启用了“永续盘存”后,ERPNext 会保持库存分类账和会计分类账同步。如果某个公司、科目或仓库的库存余额与库存科目余额不匹配,ERPNext 会停止交易并显示一条 数值不同步 的验证消息。

这通常意味着较早的库存或会计凭证在库存价值与相应的库存科目余额之间产生了差异。在您能继续过账交易之前,必须纠正这种不匹配。

为什么会发生这种情况

在永续盘存制下,每一次库存移动也会影响会计。例如,采购收货单、交货单、库存凭证或带有库存影响的销售发票都可以同时更新库存和科目。如果一方被更改、取消、重新过账或更正,而另一方没有完全匹配,则两个余额可能会不同步。

ERPNext 显示此验证消息是为了防止新交易建立在错误的库存估值或库存科目余额之上。

如何修复

  1. 仔细阅读验证消息,并识别错误中提到的公司、库存科目、仓库和差异金额。
  2. 从验证消息中点击 创建日记账分录
  3. 检查 ERPNext 创建的日记账分录中的科目和金额。
  4. 更新任何缺失的详细信息,例如成本中心或其他强制性的会计维度。
  5. 保存并提交该日记账分录。
  6. 重新尝试显示验证消息的交易。

该日记账分录会调整会计余额,使其与库存分类账余额匹配。在提交更正后,ERPNext 应允许交易继续进行。

在提交日记账分录之前

  • 检查日记账分录中选择的库存科目是否与验证消息中提到的科目相同。
  • 根据错误中显示的差异,确认该分录应为借方还是贷方。
  • 如果您的设置中启用了会计维度,请检查成本中心、项目或财务账簿等维度。
  • 如果差异很大或出乎意料,请在提交调整之前检查最近的库存和会计交易。

更正之后

一旦日记账分录提交,请重新打开原始单据并尝试保存或提交。如果针对另一个科目、仓库或公司出现相同的验证消息,请针对该特定差异重复进行更正。

如果这种不匹配反复出现,请检查是否有较早的库存重过账、已取消的单据、回溯日期的交易或自定义的会计凭证影响了同一个库存科目。

每周自动转发

ERPNext 中库存估价错误的自动重过账


1. 这是什么功能?

有时,针对某个物料的库存价值可能会变得不正确。这通常发生在针对同一物料和仓库的多笔库存交易在非常接近的时间(或回溯日期)内录入时,系统最终从错误的较早交易中计算了库存价值。

当这种情况发生时:

  • 您报表中显示的库存价值与应有值不匹配,或者
  • 库存价值会计价值(总账中的库存分类账)不再一致。

通常,修复此问题意味着需要有人打开相关报表,找出错误的条目,并手动触发“重过账”来重新计算它们。

此功能可自动完成此清理工作。一旦您启用它,系统会每周检查您的库存,并在发现当前会计年度中存在不正确的价值时,自动重过账受影响的物料以进行纠正——无需手动操作。


2. 什么时候应该使用它?

如果您的业务符合以下任何情况,请启用此功能:

  • 您录入大量库存交易,尤其是针对相同物料和仓库的许多交易。
  • 您经常进行回溯日期更正性的库存录入。
  • 您之前曾在库存分类账差异报表或库存与账户价值比较报表中发现不匹配,并且不得不手动修复。
  • 您希望库存价值与会计价值保持对账一致,而无需每周有人检查。

在以下情况应依赖它:

  • 如果您只有少量库存交易,并且很少看到估价问题,您可能不需要它(您仍然可以为了安心而启用它——如果没有需要修复的问题,它什么也不做)。
  • 不能替代正确的设置。如果底层配置错误(请参阅第6节),该功能会告知您,而不是静默地重过账。

3. 它具体检查和修复什么?

每周,系统会针对每个公司查看两个标准报表:

报表 它捕获的问题
库存分类账差异 库存数量/价值在内部变得不一致的物料(“错误的先前交易”问题)。
库存与账户价值比较 其中库存价值与过账到库存科目的会计价值不匹配的凭证。

对于在当前会计年度内发现的任何问题,它会自动创建一个重过账来重新计算并纠正这些价值。

重要提示:它仅对当前会计年度进行操作。较早的期间被有意保留不变(这些期间通常已结账/审计,重过账可能会干扰已定案的账目)。如果您需要更正以前的年度,请手动且有目的地进行。


4. 如何启用(分步指南)

  1. 在搜索栏中,转到库存重过账设置
  2. 找到错误估价的自动重过账部分。
  3. 勾选复选框“自动重过账不正确的估价条目(每周)”
  4. 保存

就这样。该功能默认关闭,因此在您勾选此框之前不会发生任何事情。一旦勾选,它会在后台每周自动运行一次——您无需手动启动它。

要再次关闭它,只需取消勾选该框并保存。


5. 运行后会发生什么?

  • 系统会静默地为需要更正的物料/凭证创建重过账物料估价条目。这些在后台运行并更新库存价值。
  • 您可以通过打开重过账物料估价列表来查看已重过账的内容。
  • 它被设计为可以安全地重复运行:对于已经在更正中的内容,它不会创建重复的重过账。

您通常不需要做任何事情——更正后的价值会在重过账完成后直接显示出来。


6. 它无法自行修复的一件事——以及您如何知道

某些不匹配并非由计算顺序引起,而是由设置错误引起:仓库链接到了错误类型的科目

要使库存会计正常工作,仓库必须链接到一个科目类型为“库存”的科目。如果仓库指向了其他类型的科目(例如普通的费用或应收科目),那么无论重过账多少次,价值也永远不会匹配——问题出在配置上,而不是计算上。

当该功能检测到这种情况时,它不会浪费时间重新过账。相反,它会向系统管理员发送通知,描述以下内容:

  • 受影响的凭证,
  • 涉及的仓库,以及
  • 设置错误的科目。

收到此通知后应如何处理:

  1. 打开消息中提到的仓库
  2. 检查与该仓库关联的科目
  3. 确保该科目的科目类型为“库存”(或将仓库链接到正确的库存科目)。
  4. 保存。下一次每周运行(或手动重新过账)即可对账数值。

7. 须知事项(限制与提示)

  • 日记账分录永远不会自动重新过账。 ERPNext 不会重新过账日记账分录,因此,如果手动对库存科目创建了日记账分录,由此产生的任何库存/科目差异将不会被此功能处理。请手动审核并更正。
  • 仅限当前会计年度。 较早的期间会被有意跳过。
  • 每周运行一次。 这是一个计划性的清理任务,而非即时修复。如果您需要紧急更正,仍可以像以前一样手动触发重新过账。
  • 大型公司: 每周检查会检查每个物料-仓库组合,因此在非常大的数据库上,它会作为后台任务运行,可能需要一些时间——这是正常的,不会影响日常工作速度。
  • 通知可能会重复: 如果配置错误的仓库科目未修复,您可能会在接下来每周的运行中收到相同的通知,直到问题被纠正为止。

8. 快速常见问题解答

问:它会在不告知我的情况下更改我的科目或库存吗?
它会通过重新过账(这是 ERPNext 重新计算库存价值的标准、受支持的方式)来更正库存估值。它仅对当前年度中确实错误的条目进行操作。对于配置问题,它会发出通知,而不是更改任何内容。

问:永久启用此功能安全吗?
是的。当没有问题时,它只会发现无事可做,从而不执行任何操作。

问:我能看到它做了什么吗?
可以——请查看重新过账物料估值列表,以查看已创建的重新过账记录。

问:我开启了此功能,但没有任何反应。
它按每周计划运行,而不是立即执行。此外,如果您的库存值已经正确,它就没有任何操作可执行。

问:谁会收到“错误科目”通知?
拥有系统管理员角色的用户。

标准估价率

标准估值率(标准成本法)

1. 概述

标准估值率功能允许您以单一的、预先定义的“标准”成本来评估物料的库存价值,而不是使用先进先出法移动平均法产生的不断变化的成本率。

使用先进先出法或移动平均法时,您的库存价值会随着每次收货、消耗或重估而变动。而使用标准成本法,成本率由您固定(通过物料标准成本记录设定),并且仅在您有意发布新成本率时才会改变。该物料的所有收货、发货和结存都按标准成本率进行,实际采购价格与标准成本率之间的差额会过账到专门的采购价格差异科目,而不会悄悄地增加或减少您的库存价值。

本指南将解释该功能的作用、您选择它的原因、如何设置、它在交易和会计处理中的行为,以及您必须遵守的规则,以保持标准成本分类账的一致性。


2. 为什么选择标准成本法而非先进先出法/移动平均法?

关注点 先进先出法 / 移动平均法 标准成本法
库存价值稳定性 随每次收货和重估而变化 固定不变,直到您发布新成本率
回溯交易 触发所有后续分录的全面重估/重新过账 无需重新过账 — 仅进行快速的数量/价值调整
重新过账性能 对于历史长、数据密集的物料,速度较慢 快速 — 成本率按日期确定,无需重新计算
成本可预测性 货物成本因批次/平均值而异 货物成本始终是标准成本率
差异可见性 价格差异隐藏在库存价值中 价格差异被隔离在采购价格差异科目中
最适合 贸易行业,每批货物的实际到岸成本很重要 制造业及高产量运营,希望获得可预测的产品成本并频繁进行回溯性更正

核心优势:回溯分录不会触发重估

这是采用标准成本法最重要的原因。

  • 使用先进先出法 / 移动平均法时,插入一笔过去的交易会改变所有后续交易的平均成本/批次消耗。系统必须重新过账(重新计算)整个后续的库存分类账分录链。对于拥有数月密集历史的物料来说,这个过程缓慢且消耗大量资源,并且会暂时改变您认为已经结算的库存价值。
  • 使用标准成本法时,每笔库存分类账分录的价值就是 quantity × standard rate as of that date。一笔回溯分录仅会改变后续分录的累计数量;它们的价值则直接从(已知的)标准成本率重新得出。无需进行先进先出/平均成本重新计算,也没有重新过账作业。更新是一次快速的数量和价值调整,您的库存估值保持稳定和可预测。

简而言之:标准成本法用“完美追踪的实际成本”换取了速度、稳定性和可预测性——这正是大多数制造业和高吞吐量运营所期望的权衡。


3. 核心概念:物料标准成本记录

物料的标准成本率通过物料标准成本单据发布。每条记录包含:

  • 物料 — 采用标准成本法估值的物料(仅可选择估值方法解析为标准成本法的物料)。
  • 公司 — 成本率按公司设定。
  • 标准成本率 — 固定的估值成本率(必须大于零)。
  • 生效日期 — 此成本率开始适用的日期。

每个物料+公司组合都有一个时间线,包含多条物料标准成本记录,其生效日期严格递增。任何给定日期生效的成本率,是该日期或之前生效的最新记录。

Item A (Company X)
 ├─ ISC-2025-0001  Effective 01-Jan-2025  Rate 100   ← rate from 01-Jan-2025 onward
 └─ ISC-2026-0001  Effective 01-Jan-2026  Rate 130   ← rate from 01-Jan-2026 onward

4. 设置物料的标准成本法 — 分步指南

步骤 1 — 将物料的估值方法设置为标准成本法

在物料上设置估值方法 = 标准成本法,可通过以下三种方式之一(优先级最高者生效):

  1. 物料主数据估值方法 = Standard Cost或者
  2. 将物料留空,并将公司默认估值方法设置为 Standard Cost或者
  3. 将两者都留空,并将库存设置 → 默认估值方法设置为 Standard Cost

重要提示: 一个已有库存移动记录的物料无法追溯性地切换为标准成本。请在新物料上启用标准成本,或在该物料产生任何库存交易之前启用。

第 2 步 — 创建第一个物料标准成本记录

  1. 前往 物料标准成本 → 新建
  2. 选择 物料(下拉菜单仅列出有效计价方式为标准成本的物料)。
  3. 选择 公司
  4. 输入 标准费率(必须大于 0)。
  5. 设置 生效日期(不能是未来日期)。
  6. 保存提交

物料的第一个标准成本记录只能在该物料+公司组合尚未产生任何库存交易之前创建。这确保了物料在标准成本下开始其生命周期,无需重新估值。

第 3 步 — 正常进行交易

像往常一样进行物料的收货、发货、生产和调拨。每笔库存分类账分录都会根据其过账日期生效的标准费率自动计价。

第 4 步 — 后续更改费率(需要时)

当需要更改标准成本时:

  1. 创建一个新的物料标准成本记录,并填入新费率。
  2. 为其设置一个晚于上一条记录生效日期的生效日期(生效日期必须严格递增),并且不早于该物料的最后库存交易日期
  3. 提交 该记录。

提交时,系统会自动创建并提交一份重估库存对账单,该对账单会将所有仓库中所有现有库存从旧费率重新计价为新费率,并将重估损益计入库存调整科目。您无需手动创建此对账单——系统会自动生成并关联到该记录上。


5. 标准成本在交易与会计处理中的表现

库存分类账计价

标准成本物料的每笔库存分类账分录均按标准费率计价,与单据(采购)费率无关。

示例 — 以不同于标准的价格收货:

  • 标准费率 = 100
  • 采购收货 10 个单位,账单价格为 150
  • 库存分类账按 100 计价该收货 → 库存价值增加 1,000(而非 1,500)。

会计处理 — 采购价格差异

单据/采购费率标准费率之间的差额即为采购价格差异,该差异将过账到公司的默认采购价格差异科目(或已设置的物料级覆盖科目)。

示例 — 以 200 收货 1 个单位,标准为 130(永续盘存制):

科目 借方 贷方
库存(仓库资产) 130
采购价格差异 70
已收未开票库存 200

70 的差额计入采购价格差异而非销售成本。这适用于采购收货单以及带有“更新库存”选项的采购发票(无论是针对收货单开票还是独立开票)。

前提条件: 公司必须配置了默认采购价格差异科目(或物料级的采购价格差异科目)。如果两者均未设置,交易将被阻止并显示明确的错误信息,以确保差异不会被错误入账。

会计处理 — 生产差异

生产时,产成品按其自身的标准费率计价,而非按所消耗原材料的汇总成本计价。消耗的投入价值与生产的产出价值之间的任何差额即为生产差异,该差异将过账到公司的库存调整科目。

示例 — 消耗 5 个原材料 @ 标准 50(=250)生产 1 个产成品 @ 标准 200:

  • 产成品按 200 计价。
  • 50 的差额计入库存调整

费率变更时的重估

发布新的物料标准成本后,系统会通过自动生成的重估库存对账单,将所有仓库中的现有库存按新费率重新计价,并将损益计入库存调整科目。序列号和批次跟踪的物料也会在所有仓库中进行重估,且重估时无需序列号/批次捆绑。


6. 保护标准成本完整性的规则

标准成本通过强制执行一些规则来实现其速度和稳定性。理解这些规则为何存在,能让您轻松适应它们。

6.1 您不能将交易日期回溯到最新生效费率之前

规则(R2): 标准成本物料的库存交易不能早于其最新物料标准成本的生效日期。

为什么。 快速的“无需重新过账”保证依赖于标准费率从最新生效日期到今天这个窗口期内保持恒定。如果你能在费率变更之前插入一笔交易:

  1. 后续的库存分类账条目将跨越两种不同的费率,而快速的单一费率价值变动会错误地评估费率变更后过账的条目;以及
  2. 更严重的是,在费率变更时创建的重估对账断言了当时的现有数量。一笔回溯日期的条目会改变那个历史数量,使得重估的数量快照——及其总账影响——变得过时。纠正它需要一次完整的重新过账,而这正是标准成本旨在避免的。

因此,系统会通过类似以下消息阻止该条目:

不允许回溯日期的条目
无法在 2025年6月1日 过账标准成本物料 物料 A:该日期早于 2026年1月1日,即其最新标准估价费率 ISC-2026-0001 的生效日期。
请在 2026年1月1日 或之后过账此条目。

替代做法: 在最新生效日期当天或之后过账该交易(或一笔更正调整)。

注意:当前费率制度内的回溯日期条目(在最新生效日期当天或之后,但早于今天)允许的——它们只会改变后续数量,并通过快速的数量/价值更新处理,无需重新过账。

6.2 你不能取消旧的库存交易——应创建调整

一旦标准成本建立并且存在后续交易,你不应试图通过取消旧的库存凭证来“修正过去”。取消历史条目本身是对数量时间线的回溯性更改:它会使得每次后续重估所依赖的现有数量失效,并强制引发重新过账/重估级联——这违背了标准成本的目的,并可能导致库存价值不一致。

正确的工作流程是向前看的: 记录一笔新的调整条目(例如,库存条目或库存对账),日期设为最新生效日期当天或之后,以反映变更。这保持了历史分类账的不可变性,并保持了标准成本时间线的完整性。

同样,物料标准成本记录不能被取消。 要更改已发布的费率,请提交一条新的物料标准成本记录,包含新费率和更晚的生效日期。新记录的重估会干净地处理过渡;旧记录则保留为历史费率。


7. 实际场景

场景 A — 带有价格差异的标准采购

  1. 将物料 A 设置为标准成本;创建物料标准成本费率 100,生效日期为今天。
  2. 以账单费率 120 接收 100 个单位。
  3. 结果: 库存价值增加 100 × 100 = 10,000100 × 20 = 2,000 的价格差异计入采购价格差异。你的库存以清晰、可预测的 100/单位计价。

场景 B — 年度费率修订

  1. 物料 A 全年以费率 100(生效日期 2025年1月1日)运行,两个仓库中共有 500 个单位库存。
  2. 在 2026年1月1日,你发布一条新的物料标准成本费率 130
  3. 结果: 一笔重估库存对账自动将 500 个现有单位(在两个仓库中)从 100 重估为 130;500 × 30 = 15,000 的增值计入库存调整。从 2026年1月1日起,新的收货/发货按 130 计价。
  4. 你现在不能过账任何日期早于 2026年1月1日的物料 A 库存交易(参见 §6.1)。一份 12 月的迟交发票必须使用 2026年1月1日当天或之后的过账日期记录,或作为前瞻性调整处理。

场景 C — 当前制度内的回溯日期更正

  1. 最新生效费率为 130(2026年1月1日);今天是 2026年1月15日。
  2. 你发现一笔日期为 2026年1月5日的 20 个单位收货被遗漏。
  3. 结果: 允许。该条目按费率 130 过账;后续条目的运行数量向前移动,其价值按 130 重新推导——无需重新过账作业,快速且稳定。

场景 D — 制造

  1. 原材料标准 50,成品标准 200
  2. 重新包装消耗 5 个原材料(价值 250)并生产 1 个成品。
  3. 结果: 成品按 200 计价;50 的制造差异计入库存调整

8. 限制、最佳实践与建议

限制

  • 不支持追溯采用。 已有库存移动的物料不能切换为标准成本;请在物料发生交易前启用它。
  • 第一个费率必须早于所有移动。 初始物料标准成本只能在物料+公司尚不存在任何库存交易时创建。
  • 生效日期严格递增,不能是未来日期,且必须在最后库存交易日期当天或之后。
  • 禁止在调价前进行回溯操作。 交易日期不得早于最新生效的费率(§6.1)。
  • 禁止取消 物料标准成本记录,历史库存凭证也不应被取消——应使用正向调整(§6.2)。

最佳实践

  • 预先配置科目: 在处理标准成本物料之前,先设置公司的默认采购价格差异科目库存调整科目,这样差异就能正确入账,系统也不会因缺少科目而阻止收货。
  • 定期审查差异科目。 如果采购价格差异持续较大,说明您的标准费率已偏离实际——是时候发布新费率了。
  • 规划清晰的切换日期进行费率变更(例如,期间/年度开始)。由于您不能在最新生效日期之前过账,请选择一个在您最后一条已记账交易之后的生效日期,理想情况下是在所有前期分录录入完毕之后。
  • 进行正向修正,而非反向修正。 将历史分类账视为不可更改;任何变更都应通过新的、带有日期的调整来体现。
  • 仅在物料确实需要将其差异与公司默认值分开时,才使用按物料的采购价格差异覆盖(通过物料默认值)。

何时推荐在生产中使用标准成本

标准成本最适用于以下类型的组织:

  • 运行高交易量,且使用 FIFO/移动平均法重新计价速度较慢的组织;
  • 经常记录回溯性更正,并希望这些更正成本低廉且不造成干扰的组织;
  • 希望获得可预测、稳定的产品成本,并清晰、独立地查看价格差异的组织;
  • 运营制造流程,且产成品应承载计划标准成本的组织。

对于纯粹的贸易运营(每批货物的实际到岸成本才是最重要的数字),标准成本不太适用

先进先出与移动平均

先进先出与移动平均计价方法

1. 概述

ERPNext 采用永续盘存制对库存进行计价:每一次库存移动(入库、出库、调拨、生产)都会通过库存分类账实时更新物料的数量货币价值。计价方法决定了如何计算每个出库单位的价值,从而影响剩余库存的价值以及销售成本(COGS)。

ERPNext 支持三种计价方法:

  • 先进先出(FIFO)
  • 移动平均
  • 标准成本 (在单独指南中介绍)

本指南将解释先进先出移动平均——每种方法的工作原理、产生的会计分录、对回溯单据和重过账的处理方式,以及各自的优缺点,以便您为每个物料选择合适的方法。

设置位置: 计价方法可以在物料级别(物料主数据 → 计价方法)设置,也可以在公司级别设置默认值,或者在库存设置中全局设置。最具体的设置优先级最高(物料 → 公司 → 库存设置)。


2. 先进先出(FIFO)

2.1 工作原理

先进先出假设最先入库的库存最先被消耗ERPNext 为每个物料-仓库组合维护一个 [quantity, rate] 层的先进先出队列。每次入库都会以其实际入库价格添加一个层;每次出库都会从队列的前端(最早入库的)消耗层,并使用它们原始的价格

任何时刻报告的计价率是队列中当前剩余层的加权平均值,但每个出库单位的成本是根据其所消耗层的具体价格计算的。

2.2 示例

步骤 交易 之后队列 库存价值
1 入库 10 个 @ 100 [10 @ 100] 1,000
2 入库 10 个 @ 120 [10 @ 100], [10 @ 120] 2,200
3 出库 15 个 [5 @ 120] 600

在步骤 3 中,出库的 15 个单位成本计算为 10 个 @ 100 + 5 个 @ 120 = 1,600(最早入库的优先)。剩余的 5 个单位仍按其原始价格 120 计价。

2.3 会计影响

在永续盘存制的公司中,出库会以消耗单位的实际分层成本计入销售成本:

  • 销售成本(步骤 3)= 1,600
  • 库存减少 1,600;剩余库存资产 = 600。

由于出库成本反映了离开库存的特定单位的实际历史采购价格,先进先出法紧密追踪实际采购成本,并被广泛接受用于法定/税务报告。

2.4 优点

  • 紧密匹配实际成本流 — 销售成本反映了所消耗特定单位的真实支付价格。
  • 期末库存价值更真实 — 剩余库存按最近期的采购价格计价,因此资产负债表反映了接近当前重置成本的价值。
  • 广泛接受 — 符合会计准则和税务机关要求;直观且可审计(可以追溯哪些层被消耗)。
  • 适用于有保质期/批次轮换的物料(食品、药品、易腐品),因为实际中您也会优先发出最早入库的。

2.5 缺点

  • 对回溯单据敏感 — 插入或编辑过去的交易会改变后续出库消耗的层,因此必须重新计算(重过账)每个后续的分类账条目。在长而密集的分类账上,这种重过账速度慢且资源消耗大。
  • 在价格上涨环境中销售成本波动大 — 较早、较便宜的层先被费用化,这可能在通货膨胀期间低估销售成本并高估利润。
  • 计算/存储量更大 — 必须为每个物料-仓库组合维护和序列化层队列。
  • 重过账负担更重 — 当更正、取消或落地成本凭证触及历史条目时。

3. 移动平均

3.1 工作原理

移动平均为每个物料-仓库组合维护一个单一的混合平均价格。在每次入库时,重新计算平均值:

new average = (existing qty × existing avg rate + incoming qty × incoming rate)
              ──────────────────────────────────────────────────────────────
                             existing qty + incoming qty

出库按当前平均价格计价,并且不会改变平均值;只有入库(和重估)会改变它。

3.2 示例

步骤 交易 在手数量 平均价格 库存价值
1 入库 10 个 @ 100 10 100 1,000
2 入库 10 个 @ 120 20 110 2,200
3 出库 15 个 5 110 550

在第二步,平均成本变为 (10×100 + 10×120) / 20 = 110。第三步发出的 15 个单位,每个成本为 110 → 销售成本 = 1,650;剩余 5 个单位按 110 计价 = 550。

3.3 会计影响

  • 销售成本(第三步)= 1,650(15 × 平均成本 110)。
  • 库存减少 1,650;剩余库存资产 = 550。

与相同数据下的先进先出法相比,移动平均法 平滑 了成本:销售成本为 1,650,而先进先出法为 1,600,差额流入剩余库存的价值。

3.4 优点

  • 平滑价格波动 — 单一混合费率减轻了采购价格波动的影响,使销售成本和利润率更加稳定。
  • 更简单、更轻量 — 每个物料-仓库只需维护一个费率;无需存储或遍历批次队列。
  • 更易于理解和核对 — “一种物料,一个当前成本” 对运营和报告来说直观易懂。
  • 适用于同质、快消、商品化物料,其中个别批次无法区分(如散装紧固件、燃料、原材料化学品)。

3.5 缺点

  • 回溯分录仍需重新过账 — 因为过去的收货会改变 所有后续 交易的移动平均成本,ERPNext 必须重新计算后续链条。与先进先出法一样,在长账本上可能很慢。
  • 不跟踪实际批次成本 — 发出成本是混合的,因此可能与实际支付给特定发出单位的真实价格存在差异;对于可追溯批次或高价值物料来说不够精确。
  • 平均成本可能滞后于现实 — 在价格快速变化的环境中,混合费率会落后于当前市场成本,这可能会歪曲个别销售的利润率。
  • 审计追踪不够精细 — 无法指出“这些特定单位以这个特定成本发出”,只能知道当时的平均成本。

4. 先进先出法与移动平均法 — 概览

方面 先进先出法 移动平均法
发出成本基础 最旧剩余批次的实际费率 当前混合平均费率
跟踪实际批次成本? 是(批次精确) 否(混合)
销售成本行为 首先反映最旧的价格 在所有收货中平滑
期末库存价值 按最近采购价格 按混合平均价格
维护的数据 [qty, rate] 批次队列 单一平均费率
回溯分录 → 重新过账? (重新计算后续链条) (重新计算后续链条)
计算成本 较高(遍历批次) 较低(单一费率)
最适合 易腐品、批次轮换、审计敏感物料 同质、高量、商品化物料
法定接受度 非常广泛接受 广泛接受

5. 共同限制:回溯分录触发重新过账

这是两种方法共有的最重要操作特性——也是与 标准成本 的关键区别。

对于 先进先出法和移动平均法,任何库存分类账分录的价值都取决于 其之前的条目(存在哪些批次,或移动平均成本是多少)。因此,当您:

  • 插入一个 回溯 交易,
  • 取消修改 历史凭证,
  • 对过去的收货应用 到岸成本凭证,或
  • 更改过去的估价费率,

……ERPNext 必须 重新过账 — 重新计算该物料-仓库的 每个后续库存分类账分录 的数量、费率、价值和总账影响(即 重新过账物料估价 作业)。对于历史记录长且密集的物料,这 缓慢、消耗资源,并且会暂时改变您认为已确定的库存价值

如果您的组织经常记录 回溯更正,并且这种重新过账成本令人困扰,请考虑 标准成本 方法(请参阅单独的 标准估价费率 指南),其中费率按日期已知,回溯分录 不会 触发重新过账。


6. 选择方法 — 建议

您的情况 推荐方法
易腐/保质期物料,物理上先发出最旧的 先进先出法
高价值或可追溯批次的物料,需要精确成本 先进先出法
法定/税务制度要求实际成本流动 先进先出法
同质、商品化、快消物料 移动平均法
您希望获得更平滑、更稳定的利润率 移动平均法
您希望将估价维护开销降至最低 移动平均法
您经常发布 回溯 分录且重新过账成本高 标准成本 (单独指南)
您希望获得可预测的固定产品成本及隔离的价格差异 标准成本 (单独指南)

最佳实践(两种方法)

  • 在物料发生交易前设定方法。 在库存存在的情况下更改物料的计价方法会造成干扰,甚至可能被阻止。
  • 启用永续盘存科目(仓库/库存、已收未票库存、销售成本、库存调整),以确保计价与总账保持同步。
  • 批量处理历史更正,并在低流量时段运行,因为它们会触发重新过账。
  • 收货后及时使用到岸成本凭证,以避免日后进行大规模追溯重估。
  • 定期核对库存价值与总账(库存分类账/库存余额与库存科目对比),以便及早发现偏差。
  • 保持每个物料类别的一致性,以便同类物料的报表和利润率具有可比性。

7. 总结

  • 先进先出法最旧剩余批次的实际成本 对出库库存进行计价——精确、便于审计,适用于易腐品和批次可追溯商品,但批次管理负担重且对重新过账敏感。
  • 移动平均法单一混合平均成本 对出库库存进行计价——简单、平滑,适用于大宗标准化商品,但精确度较低且仍对重新过账敏感。
  • 两种方法 在历史数据变更时都会重新计算(重新过账)后续分类账。如果成本因素是决定性因素,标准成本 方法可完全避免此问题——请参阅《标准计价率指南》。

已交货未开票的库存用途

已交货但未开票

已交货但未开票账户是一个调整账户,用于记录在开具账单前已交付物品的价值。系统不会在交货时直接借记费用账户,而是通过这个中间账户进行分录,以保持销售周期会计的清晰和一致性。

该账户在任何时间点的余额代表已提交交货单但尚未开具销售发票的物品价值。

工作原理

提交交货单时:仓库的库存在手账户被贷记,全部库存价值被借记到已交货但未开票账户。

示例:一张价值₹400的交货单 → 库存在手账户贷记₹400,已交货但未开票账户借记₹400。

提交销售发票时:已交货但未开票账户被贷记以冲销,同时销售成本 (COGS)账户被借记相同金额。

示例:开具₹400的销售发票 → 已交货但未开票账户贷记₹400,销售成本账户借记₹400。

已交货但未开票账户配置

配置

  • 已交货但未开票账户可以在公司级别进行配置。
  • 要从此账户中排除销售退货分录,请在公司中启用在销售退货中禁用已交货但未开票复选框。

回溯分录与重新过账

如果回溯分录更改了交货单上的估值率,系统会通过重新过账自动更新相应销售发票上的已开票价值。这确保了交货单和销售发票之间的会计分录在整个销售周期中保持一致。