sale.order.basic sale.order True True draft sent function write({'state':'sent'}) router function action_wait() OR wait_invoice wait_ship done True function write({'state':'done'}) AND cancel True stopall action_cancel() cancel2 True stopall action_cancel() cancel3 True stopall action_cancel() invoice subflow action_invoice_create() invoice_except function action_invoice_cancel() invoice_end function action_invoice_end() invoice_cancel True stopall action_cancel() ship function action_ship_create() ship_except function write({'state':'shipping_except'}) ship_end function action_ship_end() ship_cancel True stopall action_cancel() order_confirm quotation_sent cancel order_confirm cancel all_lines (order_policy=='picking') cancel cancel (order_policy!='prepaid') or invoiced (order_policy=='prepaid') manual_invoice subflow.paid subflow.cancel invoice_recreate invoice_corrected invoice_cancel procurement.order procurement_lines_get() test_state('finished') test_state('canceled') ship_recreate ship_corrected ship_cancel