为什么我的估值率或库存价值为负或异常高?

负值或异常高的估值率几乎总是由某一笔错误的库存交易引起的,而不是估值方法本身的 bug。请在库存分类账中找到那笔交易,修正它,然后运行重新计算库存估值,这样之后的所有分录都会被重新计算。

你可能遇到了以下症状之一:

  • 库存余额显示余额价值为负,而数量却是正数。
  • 某个物料的估值率突然跳到正常成本的 10 倍或 1000 倍。
  • 交货单或销售发票上的销货成本高得离谱,或者是负数。
  • 物料清单或库存分录为某个原材料取到了一个意外的费率。

常见原因

估值率等于余额价值除以余额数量。所以当一笔价值以错误的费率入账,而剩余数量又很少时,费率就会被推得偏离很远。

原因 出了什么问题 你在库存分类账中看到什么
负库存 在库存设置中开启了允许负库存时,库存在收到之前就被发出了。出库分录使用了猜测的或旧的费率。当收货到达时,其费率不同,差额就留在了余额价值中。 余额数量降到零以下,然后一笔收货之后平均费率(余额库存)出现跳变,或者余额价值变为负数。
零费率收货 采购收货、物料收货或库存对账在保存时费率为 0(通常勾选了允许零估值率)。这会把平均值拉低。之后以旧费率出库时,取走的价值可能超过剩余的价值。 收货上的入库费率为 0,随后费率下降,之后余额价值变为负数。
倒填日期的分录 在已有分录之前过账的交易会改变之后每一笔分录的费率。如果重新计算还在排队或已失败,之后的分录会保留旧值。 倒填日期之后的分录对不上。该物料的重新计算库存估值记录显示为排队中或失败。
序列号物料 每个序列号都带有它收货时的费率。如果某个序列号以错误的费率(或 0)入库,那么它的每次转移和交货都会带着那个错误的费率。 物料转移或交货单上的入库费率与该物料的通常成本相差很大。
错误的计量单位换算 物料以一种计量单位采购(例如箱),但以另一种计量单位(个)入库。错误的计量单位换算系数会把金额分摊到过少或过多的单位上。 单据上的入库数量看起来不对,入库费率是预期费率的倍数(例如 12 倍)。

找到费率出错的那笔分录

库存分类账报表按顺序列出该物料的每一次移动,因此你可以看到费率出问题的确切凭证。

  1. 转到库存 > 报表 > 库存分类账。
  2. 设置公司、物料和仓库。将起始日期设置得足够早,以覆盖费率看起来正常的最后时间。
  3. 从上到下阅读以下列:
  • 入库费率 —— 每笔收货的费率。查找 0,或远高于正常成本的费率。
  • 余额数量 —— 查找任何降到零以下的行。
  • 平均费率(余额库存) —— 每笔分录之后的估值率。找到第一次跳变或变为负数的行。
  • 余额价值 —— 这应该接近余额数量 x 平均费率。数量为正而价值为负就标志着问题所在。
  1. 打开第一个错误行上凭证号对应的凭证,以及它前面的那笔收货。其中之一就是你的源头分录。

一次检查一个仓库。每个仓库都有自己的估值率,所以一个仓库的问题可能看起来像是转移到另一个仓库时的突然跳变。

要一次性找到所有受影响的物料,请使用库存分类账不变量检查和错误库存价值报表报表。同时检查重新计算库存估值列表中状态为失败的记录。

修正源头分录,然后重新计算

先修正源头分录。仅重新计算只会再次运行同样的错误数字。

1. 修正源头分录

如果原因是 这样做
负库存 过账缺失的收货,其过账日期和时间要早于第一次出库,这样库存就不会降到零以下。
零费率收货 取消并以正确的费率修改该收货。对于库存对账,以正确的估值率修改它。
采购收货上的错误费率 取消并修改它。如果只是缺少运费或关税,请改用到岸成本凭证。
错误的计量单位换算 修正物料计量单位表中的换算系数。然后取消并修改受影响的单据。
序列号以错误的费率入库 取消并修改该序列号的原始入库单。后续的调拨和发货在重新过账后会采用修正后的费率。

2. 运行库存重新估值

取消或修改倒填日期的分录通常会自动生成一次重新过账。如果没有生成,或者之前的重新过账失败了,就手动创建一次。

  1. 转到库存重新估值 > 新建。
  2. 设置基于:
  • 物料和仓库 — 输入物料编码、仓库,以及源分录的过账日期和过账时间(或稍早一点的时间)。
  • 交易 — 输入源分录的凭证类型和凭证编号。
  1. 保存并提交。重新过账会在后台运行。其状态会从排队中变为进行中,再到已完成。
  2. 如果状态为失败,请查看错误日志字段。它通常会指出一行你仍需修复的负库存记录。修复后点击重新开始。
  3. 再次运行库存台账,确认平均费率(结存库存)现在已恢复正常。

重新过账还会更新总账,因此库存和账目价值会再次匹配。可以在库存重新过账设置中将重新过账限制在特定时间段;如果没有任何反应,请检查那里的时间段设置。

为什么物料清单或销售发票的费率可能与库存台账不同

物料清单和销售发票中的费率是在不同的时间、或从不同的地方获取的,与库存台账不同。出现差异并不总是错误。

单据 其费率来源 为什么会有差异
物料清单 物料费率基于:估值费率、最近采购费率或价格表。使用估值费率时,它取各仓库的平均值(如果设置了源仓库,则取源仓库的值)。 成本在保存物料清单时就固定了。只有当你点击更新成本时,或者在制造设置中开启了自动更新物料清单成本时,它才会变化。而库存台账是按仓库、实时更新的。
销售发票 费率是来自价格表或定价规则的销售价格,不是成本。 销货成本由送货单入账,或者仅在勾选了更新库存时由发票入账。它使用过账日期和时间对应的估值费率。
送货单 / 库存分录 源仓库中过账日期和时间对应的估值费率。 之后倒填日期的分录会在单据提交后改变这个费率。重新过账会更新它,但打印副本仍保留旧值。

如果物料清单显示原材料成本有误,请先修正原材料的估值(见上文)。然后打开物料清单并点击更新成本。

预防措施

一旦关闭负库存并且每笔入库都带有真实费率,大多数这类问题就会消失。

  • 保持负库存禁用。在库存设置中,不要勾选允许负库存。这样用户就无法在收货之前发出库存。
  • 为每笔入库设置估值费率。除非物料确实是免费的(例如免费样品),否则不要勾选允许零估值费率。在物料主数据中为期初库存和免费物料设置估值费率。
  • 在新计量单位首次采购之前,检查物料主数据上的计量单位换算系数。
  • 限制倒填日期的分录。使用库存设置中的允许创建/编辑倒填日期交易的角色,这样只有少数用户才能过账这类分录。
  • 关注重新过账队列。每周检查库存重新估值列表中的失败记录。在更多分录堆积之前逐一修复。

还需要帮助?

如果重新过账完成后费率仍然错误,请在 support.frappe.io 上提交工单。请附上:

  • 物料编码和仓库
  • 覆盖费率出错期间的库存台账导出文件
  • 库存重新估值记录的名称,以及失败时的错误日志

库存价值对比

1. 这份报告是什么?

ERPNext 中的每一笔库存交易都会在库存台账中增加一行记录。每一行都会存储几个数字:

  • 交易后的结存数量
  • 该交易引起的库存价值变动
  • 计价费率
  • 结存库存价值

有时候这些数字会出错。常见原因包括:

  • 同一物料和仓库有大量倒填日期的记录
  • 重算失败或从未运行过
  • 旧版本的 bug 虽然已经修复,但错误的值还留在台账里
  • 对库存台账做了自定义修改

出现这种情况时,报告中的库存价值就是错的,而且库存价值可能和财务账目对不上。

库存计价对比报告可以找出这些问题。它会从每个物料和仓库的第一条记录开始,逐条检查台账,算出每个数字应该是多少。然后把实际值和预期值并排放在一起。如果两者不一致,该行就会显示为差异。

在同一份报告中,你可以用以下两种方式之一来修复差异:

  • 方式一:重算
  • 方式二:调整分录

本指南将介绍这两种方式,以及各自适用的场景。

2. 打开报告

前往库存 > 报表 > 库存计价对比,或者在搜索栏中搜索”库存计价对比”。

筛选条件

筛选条件 作用
公司 必填。要检查的公司。
开始日期 / 结束日期 只显示这两个日期之间的记录。报告仍然会从第一条记录开始读取台账,以确保数字准确。
物料 / 物料组 / 仓库 只检查这些物料或仓库。父级仓库包含其子仓库。
显示 每个物料-仓库的第一条差异(默认):只显示每个物料和仓库的第一条错误记录。通常这就够了,因为一条错误记录会导致后面所有记录都出错。
所有差异:显示每一条错误记录。
所有记录:显示每一条记录,无论对错。
忽略低于此值的差异 低于此金额的小额舍入差异会被忽略。默认值为 0.01。
显示已由调整分录结清的差异 已被调整分录结清的差异默认隐藏。勾选此项可重新显示它们。

3. 阅读报告

每一行是一条库存台账记录。各列按三列一组排列:实际值、预期值以及两者之间的差异。

实际值 预期值 差异 含义
(A) 结存数量 (B) 预期结存数量 A – B 此记录后的库存数量
(C) 库存价值变动 (D) 预期库存价值变动 C – D 此记录增加或减少了多少库存价值
(E) 计价费率 (F) 预期计价费率 E – F 此记录后的单位费率
(G) 结存库存价值 (H) 预期结存库存价值 G – H 此记录后的库存总价值

差异以红色显示。

其他有用的列:

  • 预期值依据:报告是如何算出预期值的。例如”先进先出队列”、”移动平均”、”批次平均”、”序列号收货费率”、”标准成本”或”已对账的数量和费率”。
  • 已调整方式:已经结清此差异的调整分录(如果有的话)。
  • 待处理重算:已为此物料和仓库排队或正在运行的库存重算任务。

修复之前请注意:先查看某个物料的第一条差异,打开它的凭证。确认预期值对你来说是合理的。如果预期值看起来不对,请不要修复该记录,先向你的 ERPNext 合作伙伴或支持团队报告。


4. 选择要修复的内容

两个修复按钮都在报告顶部的修复差异下方。

  • 如果你勾选了一些行,只修复这些行。
  • 如果你没有勾选任何行,报告中显示的所有差异都会被修复。

对于每个物料和仓库,修复总是从最早被选中的差异开始。


5. 方式一:重算

它的作用

重新过账会为每个选中的物料和仓库各生成一条重新过账物料估值,从其首次出现差异的日期开始。重新过账在后台运行。它会从该日期到今天重新计算每一条库存台账分录,并修正库存价值及其背后的会计分录。

重新过账后,台账从一开始就是正确的,就好像错误从未发生过一样。

步骤

  1. 选择要修复的行,或者不选任何行以修复显示的全部内容。
  2. 点击修复差异 > 重新过账。
  3. 会打开一个预览。它显示:
  • 将要重新过账的每个物料和仓库,以及其起始日期
  • 任何已经有待处理重新过账的物料和仓库。这些会被排除在外。
  • 如果重新过账从上一个财政年度开始,会显示警告
  1. 点击是继续。
  2. 会显示一条消息,说明哪些重新过账已排队及其链接,以及哪些无法执行及原因。
  3. 等待重新过账完成。你可以在重新过账物料估值列表中跟踪它们。
  4. 再次运行报表。差异应该已经消失。

优点

  • 从根源上解决问题。 从首次差异往后的每一条分录都会被修正,因此所有新旧报表都会显示正确的值。
  • 历史记录干净。 不会向台账添加额外交易。过去日期的库存和会计报表也会变得正确。
  • 对后续分录没有限制。 你可以像往常一样继续录入倒填日期的交易。
  • 无需手工记账。 你不需要差异科目。原始凭证的会计分录会被修正。

缺点

  • 会改变过去的数字。 如果首次差异发生在较早期间,该期间的期末库存、利润和资产负债表数字可能会改变。如果这些数字已经申报、审计或报告给税务机关,这就会成为问题。
  • 可能很慢。 交易很多的物料,或者起始日期很久远,重新过账可能需要很长时间。运行时还会增加系统负载。
  • 可能被阻止。 如果该期间已关闭,例如通过会计期间或期间关账凭证关闭,或者该日期之前的账户已冻结,则可能不允许重新过账。
  • 可能扩散得比预期更广。 更改发出物料的价值也会更改使用该库存的任何内容的价值,例如制造品或调拨到另一个仓库的物料。

6. 选项 2:调整分录

它的作用

调整分录会从你选择的日期开始修复库存,而不触碰该日期之前的任何内容。

在该日期,它会按台账当前持有的(错误)价值取出每个选中物料和仓库的库存,并按正确的数量和价值放回。序列号按各自费率返回,批次按各自费率返回,其余库存逐层返回,以便之后 FIFO 和移动平均保持正确。

价值差异会记入差异科目。默认情况下,这是公司的库存调整科目。

调整分录是一种用途为“调整分录”的库存对账。

步骤

  1. 选择要修复的行,或者不选任何行以修复显示的全部内容。
  2. 点击修复差异 > 调整分录。
  3. 会打开一个对话框。填写:
  • 调整日期和调整时间:库存应从该日期起正确的日期。常见选择是当前财政年度的第一天,或今天。
  • 差异科目(可选):价值差异记入的位置。留空则使用公司的库存调整科目。
  1. 点击创建。
  2. 会打开一个草稿库存对账。检查其行:
  • 当前数量 / 当前金额:台账现在持有的内容
  • 数量 / 估值费率 / 金额:它应该持有的内容
  • 差异金额:记入差异科目的金额
  1. 提交它。
  2. 再次运行报表。该日期之前的差异现在会被隐藏。勾选显示由调整分录结清的差异即可查看它们。

不要编辑这些行。 它们必须与库存应有的内容完全一致。如果你更改它们,将会收到错误,并且必须从报表重新创建调整分录。

优点

  • 过去的数字保持不变。 调整日期之前的任何内容都不会改变。已申报的纳税申报表、已审计的账目和已关闭的期间都是安全的。
  • 快速。 它只是一笔交易。即使是有多年历史的物料,也不会重新过账任何内容。
  • 易于查看和审计。 更正是带有明确金额的一张单据,并记入你选择的科目。你的会计可以准确看到更正了什么以及何时更正。
  • 在重新过账无法使用时也可用。 当旧期间已关闭或冻结时可以使用它。
  • 可以撤销。 取消调整分录会恢复库存到之前的状态。

缺点

  • 旧报表仍然错误。 调整日期之前的库存和会计报表仍然显示旧的、错误的值。只有从调整日期开始的值才是正确的。

  • 阻止倒填日期的分录。 提交后,该物料和仓库,或相同序列号或批次的任何早于调整日期的库存交易都无法过账或取消。要过账一笔,必须先取消调整分录。

  • 需要手动会计步骤。 差额会记入差异科目。您的会计可能需要审核或解释它。

  • 并非在所有情况下都适用。 物料和仓库会在以下情况下被排除,并附上原因:

    • 其库存数量和值在该日期已经正确
    • 其库存在该日期应为负数
    • 其某些序列号或批次在该日期应库存不足
    • 其第一个差异在调整日期当天或之后
    • 到该日期为止没有任何库存交易

    这些情况需要改用重新过账。


7. 并排比较

重新过账 调整分录
变更内容 从第一个差异到今天的所有分录 仅从调整日期起的库存
过去的报表 变为正确 保持原样(错误)
已关闭或已申报的期间 可能变更,或可能被阻止 不受影响
速度 历史较长时较慢,在后台运行 快速,单个单据
台账中的新单据 无 有,一个库存对账单
会计 原始会计分录入被更正 差额记入差异科目
之后的倒填日期分录 允许 调整日期之前被阻止
负库存 / 序列号或批次不足 有效 不支持,请使用重新过账
如何撤销 困难,旧值已丢失 取消调整分录

8. 我应该使用哪个选项?

在以下情况下使用重新过账:

  • 第一个差异在当前财政年度,或在一个尚未申报或关闭的期间
  • 您希望每一份报表,包括旧报表,都正确
  • 您仍然需要为这些物料过账倒填日期的分录
  • 调整分录提示该物料无法调整

在以下情况下使用调整分录:

  • 第一个差异在已关闭、已审计或已申报的过去财政年度
  • 重新过账太慢,或被已关闭的期间阻止
  • 您只需要库存从现在起正确,并且可以接受旧报表保持原样

一种常见做法:

  1. 重新过账当前财政年度内的差异。
  2. 对于始于较早、已关闭年度的差异,制作一笔日期为当前财政年度第一天的调整分录。请先与您的会计讨论。

9. 良好实践

  • 在修复大量物料之前,进行备份。
  • 在修复所有内容之前,手动检查几个物料。确保预期值是正确的。
  • 分成小组修复,例如一次一个物料组或一个仓库。
  • 每次修复后再次运行报表,确认差异已消失。
  • 在重新过账到过去财政年度之前,或在记入大额调整分录之前,与您的会计沟通。

已取消凭证的库存台账分录

有时候,一张凭证已经被取消了,但它的库存分类账条目仍然没有被取消。这可能是由于自定义设置或系统核心中的旧问题导致的。

此报告显示所有此类库存分类账条目,即凭证已经取消,但库存分类账条目仍然处于活动状态。

你可以使用此报告来修复这些条目。

选择你想要修复的条目,然后点击“取消库存分类账条目”。系统将取消所选的库存分类账条目,并为相同的物料和仓库创建重新过账条目。

取消和重新过账完成后,你的库存余额可能会发生变化。

示例

假设你的库存中有50 个水瓶。

你发现了一条关于5 个水瓶的错误库存分类账条目,并使用“取消库存分类账条目”进行了修复。

修复和重新过账完成后,你的库存将显示为45 个水瓶,而不是 50 个。

使用序列号独立估价

物料主数据上新增了一个复选框,用来决定序列化物料如何计算成本(销货成本 / 估值率)。它不会改变是否跟踪序列号——序列号始终会被跟踪。它只改变出库单件的成本(销货成本 / 估值率)如何计算。

该复选框默认勾选,所以除非你取消勾选,否则现有物料不会有任何变化。

简要说明

勾选(默认) 未勾选
创建并跟踪序列号 是 是
按序列号存储成本 是 否
出库单件的成本 该具体单件的采购价格 物料的平均成本
适用于 数百个序列号 数百万个序列号

经验法则:如果你能想象用手数清你的序列号,就保持勾选。如果你是按卡车批量收货的,就取消勾选。

它实际的作用

勾选时

每个序列号都带有自己的成本。

你以 ₹50,000 购买笔记本电脑 LAP-001,以 ₹55,000 购买笔记本电脑 LAP-002。当 LAP-002 出库时,ERPNext 会查找那个确切的序列号,并从库存价值中扣除 ₹55,000。逐件计算,完全准确。

为此,ERPNext 会为每一个序列号存储并读取成本。

未勾选时

序列号仍然会被创建。你仍然可以看到哪件发给了哪个客户,仍然可以处理保修索赔,仍然可以追溯召回。可追溯性没有任何变化。

唯一的区别在于成本核算。ERPNext 不再为每个序列号单独保存成本,而是对整个物料使用一个平均成本。

何时应该保持勾选

当每件商品的价格确实不同,而且这种差异对你的账务很重要时,保持按序列号估值开启。

典型情况:

  • 机械和设备——每台都很昂贵,且以协商价格购买。
  • 笔记本电脑、服务器、医疗设备——配置不同,所以价格不同。
  • 车辆——每台都有自己的成本,你需要所售那台的确切成本。
  • 任何一件成本可能是另一件两倍、且平均后会让你利润报告出错的情况。

在这些情况下,你处理的是几十、几百,也许几千个序列号。为每一个存储成本完全不是负担,而准确性是值得的。

何时应该取消勾选

当你有非常大量的序列号,而且这些单件的成本基本相同时,取消勾选。

示例:SIM 卡

一家电信经销商购买 SIM 卡。每张 SIM 卡都有唯一的序列号,因为监管机构要求如此,也因为每张卡都必须能追溯到激活它的客户。

数字看起来是这样的:

  • 每张 SIM 卡成本约 ₹20。
  • 单次采购为 500,000 张卡。
  • 一年内公司处理数百万个序列号。

如果勾选了按序列号估值,ERPNext 就必须为那数百万张卡中的每一张存储并读取成本。每次交付 10,000 张 SIM 卡都意味着查找 10,000 个单独成本。库存分录会变得缓慢而沉重,数据也变得难以管理。

而所有这些工作换来了什么?卡号 4,271,905 成本 ₹20。卡号 4,271,906 成本 ₹20。成本是一样的。你付出了非常大的性能代价,去跟踪一个根本不存在的差异。

这正是应该取消勾选此框的情况。你保留每张 SIM 卡的完整可追溯性——它来自哪个批次、发给了哪个经销商、何时被激活——而成本核算使用一个简单的平均值。

其他处于相同情况的物料

  • 按千销售但为合规而序列化的电缆、连接器、紧固件。
  • 批量发放的电表或水表。
  • 机顶盒、智能卡、RFID 标签。
  • 任何因法规或客户要求而序列化、而非因为你需要按件核算成本的低价值物料。

如何决定

问这三个问题:

  1. 这个物料将有多少个序列号?几千个没问题。数百万个就是问题。
  2. 这个物料的两个单件成本是否曾经有显著差异?如果它们成本总是差不多,按序列号核算成本对你毫无价值。
  3. 会有人问“那个具体单件成本是多少”吗?如果答案是否定的,你就不需要按序列号估值。

如果数量巨大并且成本全都相同并且没人问单个单件的成本,就取消勾选此框。

你需要知道的规则

你可以随时取消勾选

即使该物料已有库存和序列号,你也可以随时关闭按序列号计价。

一旦存在序列号,就无法再重新勾选

这一点很重要。在取消勾选期间,ERPNext 不会为每个序列号记录成本。这些信息从未被保存。如果你再次勾选该选项,系统将无法查找这些已有物料的成本,并会错误地对其进行计价。

因此,请把取消勾选视为一个应当慎重做出的决定。对于尚无序列号的全新物料,你可以自由地来回切换。

计价方法会变为移动平均——但仅在首次库存录入之后

一旦该物料实际用于库存交易,取消勾选该选项会将物料的计价方法设置为移动平均,并且你将无法再将其更改为 FIFO 或 LIFO。

原因很简单。FIFO 和 LIFO 通过按顺序选取成本层来运作——“最早的那件成本是 ₹20,下一件成本是 ₹21”。只有当系统知道哪件是哪件时,这才有意义。一旦不再跟踪每个序列号的成本,这些成本层就不再与实际出库的物料相匹配。移动平均对所有物料使用一个平均值,因此不需要知道它是哪一件。

如果该物料尚无库存移动,则没有任何内容被锁定。你可以取消勾选该选项,并且仍然可以选择 FIFO 或 LIFO。锁定仅在首次库存录入时开始。

退货遵循同样的规则

当该选项未勾选时,采购退货按物料的平均成本计价,就像任何其他出库移动一样——而不是按为该确切序列号支付的原始价格计价。

一个示例

某物料的库存情况如下:

  • 以每件 ₹100 购入 2 件
  • 以每件 ₹200 购入 2 件
  • 因此平均成本为 ₹150

现在,一件以 ₹200 购入的物料被发出。

交易 已勾选 未勾选
交货 ₹200 ₹150
销售退货 ₹200 ₹150
采购退货 ₹200 ₹150

勾选时,系统会找到那件确切的物料,并使用其真实成本 ₹200。未勾选时,它使用 ₹150 的平均值,而无需知道它是哪一件。

哪些内容不会改变

取消勾选此选项不会影响以下任何内容:

  • 序列号仍会生成并记录。
  • 你仍然可以查看收到了哪个序列号、它存放在哪里,以及哪个客户收到了它。
  • 保修、AMC、召回和可追溯性报告都照常工作。
  • 库存分类账、库存余额和库存账龄报告继续显示正确的值。

只有成本计算方法会改变。

现有物料

当你升级时,每个已有序列号的物料都会将此选项勾选。你当前的计价行为会被完全保留。在你决定对某个特定物料取消勾选之前,不会有任何变化。

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

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


如何启用

  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 应允许交易继续进行。

在提交日记账分录之前

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

更正之后

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

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