v3.7.0
What's New
- Close-short workflow — accept partial fulfillment when full quantity cannot be produced or shipped; close-short preview shows per-line achievable quantities before executing
- PO accept-short — complete a production order with less than the ordered quantity; BOM-aware guard prevents breaking assembly dependencies
- SO line editing — edit quantities on confirmed/in-production/on-hold/pending orders with reason tracking
- SO line removal — remove a line from an editable order; guarded by shipped quantity, active PO check, and minimum one-line requirement
- PO refresh-routing — re-snapshot a product's current active routing onto an existing production order
- Quote PDF redesign — professional B2B layout with brand colors, two-column header, itemized lines, and terms
- Invoice PDF redesign — professional layout with full customer info, payment terms, calculated due date, and packing slip match
- Packing slip redesign — matches invoice/quote style with brand header, dark table header, and alternating row stripes
Bug Fixes
- Pending orders now included in editable statuses
- Quote-converted orders incorrectly used
source='portal'— nowsource='quote' sales_orders.unit_pricenullable fix for multi-line quotes (migration 077)- Packing slip header collision fixed
See CHANGELOG.md for full details.