You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Odoo10库存导入报错:字段‘Inventories’规格不明确咨询

解决Odoo 10库存调整导入的"Ambiguous specification for field 'Inventories'"错误

这个错误本质上是Odoo在解析你的导入文件时,搞不清楚你要关联的是哪一个库存调整(Inventory)记录——从第2到572行的内容里,你用了多种方式指定库存调整,或者重复的标识导致了冲突。结合你给出的导入列信息,我来帮你拆解问题和解决步骤:

错误原因分析

你导入文件里的Inventories/product、Inventories/Checked quantities这种嵌套列命名,加上同时指定了id列(值为stock.stock_inventory_3),会让Odoo误以为你在多行里要创建/关联多个不同的库存调整,但实际上你应该是想把所有明细行绑定到同一个库存调整(比如那个Initial Inv...的库存)。这种混乱的字段指定方式触发了Odoo的校验逻辑,它要求你对每个库存调整只能用一种标识方式(外部ID、名称或数据库ID),且不能在多行里重复冲突指定。

具体解决方案

根据你的需求分两种情况处理:

情况1:给已有的库存调整(比如stock.stock_inventory_3)添加明细行

  1. 清理冲突列:删掉Inventories/product和Inventories/Checked quantities这两列——这些列的命名方式会误导Odoo,让它认为你要单独指定库存调整的属性,而不是绑定明细行。
  2. 统一库存调整标识:确保所有行的id列都填stock.stock_inventory_3(或者只在第一行填,后面的行留空,Odoo会自动继承),不要同时填name列(比如Initial Inv...),避免多种标识冲突。
  3. 保留正确的明细列:保留line_ids/product_id/id、line_ids/product_qty、line_ids/location_id/id、line_ids/product_uom_id/id这些列,每一行对应一个产品的库存调整明细,都会关联到你指定的那个库存调整上。

情况2:创建新的库存调整并包含所有明细行

  1. 只在第一行指定库存调整信息:在第一行的name列填你的库存调整名称(比如Initial Inventory),不要填id列(除非你提前定义了外部ID),后面所有行的name和id列留空。
  2. 用正确的明细字段前缀:所有产品明细相关的列都用line_ids/xxx的格式,比如line_ids/product_id/id对应产品外部ID,line_ids/product_qty对应调整数量,不要用Inventories/xxx这种格式。
  3. 避免重复标识:确保整个导入文件里,同一个库存调整只被指定一次(第一行),后面的明细行自动关联到这个新创建的库存调整。

测试建议

先拿出2-3行数据按照上面的格式修改后测试导入,确认没有错误后再导入全部572行数据,这样能快速定位可能的格式问题。

正确的导入列示例

idnameline_ids/product_id/idline_ids/product_qtyline_ids/location_id/idline_ids/product_uom_id/id
stock.stock_inventory_3Initial Inventoryproduct.product_1100stock.stock_location_stockproduct.uom_unit
product.product_250stock.stock_location_stockproduct.uom_unit

内容的提问来源于stack exchange,提问作者Asmaa Samir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:25:19