79d9e6b3b085af4686e646619535ce4f7cbe3fe6
Rewired portrait + landscape variants of report_fp_bol. The BoL had no line collection of its own (fusion.plating.delivery only has a soft `job_ref` Char), so the previous cargo-description block was a single hardcoded row. Restructured to look up the job's mrp.production via `job_ref`, iterate its `move_finished_ids` (excluding cancelled), and render each finished-goods move through the shared customer_line_header macro using the `move.sale_line_id or move` adapter pattern. When no MO is found or there are no finished moves, the template falls back to the previous single-row "Plated parts — Job X" behavior so legacy records without a backing MO still print correctly. Per-row QTY now reflects the individual move's `product_uom_qty` instead of the MO's aggregate `product_qty`. Both variants render successfully on entech against a delivery whose job_ref matches a real MO with one finished move. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
Odoo 19 custom modules
Languages
Python
55.9%
HTML
26.1%
JavaScript
14.9%
SCSS
1.8%
CSS
0.8%
Other
0.4%