销售单确认后,Odoo 是怎样一路生成发货与补货动作的
从 sale.order._action_confirm 到 sale.order.line._action_launch_stock_rule,再到 stock.rule.run、_run_pull、_run_buy,讲清楚销售如何触发库存、采购与补货链。
TOPIC PICKS
从 sale.order._action_confirm 到 sale.order.line._action_launch_stock_rule,再到 stock.rule.run、_run_pull、_run_buy,讲清楚销售如何触发库存、采购与补货链。
可以顺着继续读的相邻方向
从 sale 与 sale_stock 源码讲清 Odoo 销售订单和销售订单行的 invoice_status 到底怎么算,为什么按订购、按交付、down payment、特殊行与已完成 move 会让状态看起来忽左忽右。
Odoo 的 Event Booth Sale 看起来像是在销售订单里卖一个服务产品,但源码实际上把“想要某个展位”“确认拿到某个展位”“付款后正式落定”拆成了多层状态。本文沿着 sale.order.line、event.booth.registration、sale.order 和 account.move 把这条链路拆开讲清。
很多人知道 Odoo 可以开 Down Payment Invoice,但容易把它理解成“先随便开一张发票”。其实源码里这条链路专门做了预付款建模、税额拆分、销售行锚定和后续抵扣语义。本文讲透这个向导到底在干什么。
从 sale_stock 源码看,Odoo 怎样先统计已履约数量,再决定要不要重新发起 procurement,避免确认、改数量、补单时重复造 move。
sale_subscription_partnership 在订阅取消、关闭、续费、重开时会联动 commercial partner 的 grade 与 pricelist;权益边界不由 subscription_state 单独决定。
很多仓库操作里都会遇到 backorder,但很多人并不真正理解它出现的边界。本文把部分履约、剩余数量和 backorder 逻辑讲清楚。