18072c9c60e54d785a0421c2d4f4b3d6ba3f4628
H1 — Recipe propagation hardening for multi-part orders. The G3 onchange fires when material_process changes, but a newly-added line (especially via inline part create) sometimes didn't pick up the recipe before confirm. In action_create_order, just BEFORE building so_vals, force line.process_variant_id = wizard.material_process if the line is missing one. Also added the same fallback inside the so_vals dict so the SO line always carries the right recipe even if the wizard line missed it. H2 — Strip 'spec - PART Rev X (xN)' header from customer-facing description. Per user feedback, the customer-facing reports (SO confirmation, Invoice, CoC, packing slip, BoL) should show ONLY the typed description + thickness in the Description column. The legacy header that prepended part metadata to line.name duplicated info from the Part Number column. Wizard now writes ONLY the customer description to line.name; the Part Number column owns the part-rev-name display. H3 — Uppercase customer-facing description in reports. The shared customer_line_description macro now wraps the description, serial, and thickness in text-transform: uppercase divs. All reports that use the macro (SO confirmation, Invoice, CoC, packing slip, BoL) get the caps treatment automatically. Non-part lines (freight, rush fees) keep their natural casing. Manually cleaned up DOD-00154/SO-30062: - Backfilled line 682 with the header recipe (ENP ALUM BASIC HP) - Stripped the legacy 'No spec - PART Rev (xN)' header from both lines' names; descriptions now read 'THIS IS TEST SPECIFICATIONS...' and 'THIS IS BLB ABLA BOLL' cleanly.
Description
Odoo 19 custom modules
Languages
Python
57%
HTML
24.9%
JavaScript
14.7%
SCSS
2.2%
CSS
0.8%
Other
0.3%