出库时的 stock.move.line 是如何确定的
用通俗但不失源码细节的方式,讲清楚 Odoo 出库时 stock.move.line 的生成逻辑:从 stock.move、stock.quant、移除策略到 lot/serial 拆行。
CATEGORY FOCUS
聚合 Odoo 开发基础、源码理解、ORM、模型、视图、安全与扩展实践。
TOPIC PICKS
用通俗但不失源码细节的方式,讲清楚 Odoo 出库时 stock.move.line 的生成逻辑:从 stock.move、stock.quant、移除策略到 lot/serial 拆行。
基于 attachment_indexation 源码,讲清 Odoo 如何从 docx、pptx、xlsx、OpenDocument 与 PDF 中抽取文本,为什么会按 checksum 做缓存,以及提取失败时系统如何优雅回退。
基于 Odoo 19 的 ir.ui.view 源码,聚焦很多人比 XPath 更容易忽略的部分:priority、mode=primary、inherit 树组合顺序与访问边界。理解这些,才能真正解释“为什么我的 patch 生效过,又像没生效”。
很多人把 cross-dock 理解成“货不入库存,直接发走”。这句话方向没错,但太粗。Odoo 真正表达的是:货虽然不进入 Stock 储位,但仍然要经过一个明确的 Input→Output 中转链路,而且系统专门为此预留了 xdock picking type。本文把这层语义讲透。
Odoo 的任务分派并不是往 user_ids 填个人就完事。源码里它还会更新时间、自动订阅、发送分派通知,甚至从邮件收件人推断 assignee。本文把整条链讲清楚。
很多销售团队会说‘这批商机卡住了’,但 Odoo CRM 在源码里并不只把它当主观感受。系统专门用 rotting threshold、date_last_stage_update 和 won_status/type 组合,判断哪些机会是真的在漏斗里放坏了。
很多人以为继承视图只是“贴一段 XML 上去”。实际上,Odoo 会先组装整棵视图树,再按继承顺序逐层应用 XPath 规格,顺序本身就是逻辑的一部分。