Odoo 销售开票链讲透:invoice_status、qty_to_invoice 与 _create_invoices 是怎么配合的
很多人会用销售开票,但不清楚 invoice_status 为什么变、哪些行能开票、系统如何从销售单生成 account.move。本文把这条链一次讲透。
ARTICLE LIBRARY
持续记录源码理解、业务流程、模块开发经验与踩坑总结。
很多人会用销售开票,但不清楚 invoice_status 为什么变、哪些行能开票、系统如何从销售单生成 account.move。本文把这条链一次讲透。
从 sale.order._action_confirm 到 sale.order.line._action_launch_stock_rule,再到 stock.rule.run、_run_pull、_run_buy,讲清楚销售如何触发库存、采购与补货链。
把 Odoo 库存分配这条主链路拆开讲,从 picking.action_assign 到 move._action_assign,再到 quant 层找货,帮助你建立源码阅读的主干线。
用一篇文章快速建立 Odoo 库存核心数据模型的整体认知,搞清 picking、move、move line、quant 各自负责什么,以及它们是怎么串起来的。
用通俗但不失源码细节的方式,讲清楚 Odoo 出库时 stock.move.line 的生成逻辑:从 stock.move、stock.quant、移除策略到 lot/serial 拆行。
在 Odoo 里,compute、onchange、constraints 和 recompute 经常被当成“差不多的自动化”。其实它们分别负责依赖驱动、界面联动、保存校验和存储字段重算。