quality_patch/README.md
2026-02-11 10:28:28 +07:00

30 lines
2.0 KiB
Markdown

# Quality Patch
This module addresses specific issues encountered in Odoo 19 Quality Management.
## Fixed Issues
1. **MRP Quality Check AttributeError**: Fixes `AttributeError: 'mrp.production' object has no attribute 'lot_producing_id'` by adding a **compatibility layer** to the `mrp.production` model. It provides a computed `lot_producing_id` field (alias to `lot_producing_ids[:1]`), satisfying all Odoo 18-style callers.
2. **Partial Failure / Quantity Discrepancy & Reversion**: Fixes issues where partial failure quantities (e.g., 20,000) reverted to full production quantities (e.g., 220,000) after MO completion.
- **Persistent Input Storage**: Introduces a new field `qty_failed_manual` that permanently stores your wizard input.
- **Recompute Protection**: The system now strictly prioritizes this manual value over any automatic recomputations, ensuring reports remain accurate.
- **Popup Capture**: Overrides the wizard's confirmation logic to ensure the specific quantity entered in the failure popup is captured correctly.
3. **MO Closing Error (Price Difference)**: Fixes a `ValueError` during MO closing when a product has multiple split moves (common after partial quality failures). Overrides `_cal_price` on `stock.move` to handle multiple finished moves.
6. **"Control per Quantity" on MOs**: Removes the standard restriction that prevented selecting "Control per Quantity" for Manufacturing Operations, allowing for the partial failure workflow to be used.
## Installation
1. Ensure this module is in your Odoo `addons` path.
2. Update the Apps List in Odoo.
3. Install or **Upgrade** `quality_patch`.
## Technical Details
- **Model Compatibility**: Extends `mrp.production` to provide `lot_producing_id`.
- **Inheritance**: Extends `quality.check.wizard` (Transient Model) and `quality.check`.
- **Views**: Extends `quality_control.quality_check_wizard_form_failure` via XPath.
- **Dependencies**: `quality_mrp`, `quality_control`, `mrp`.
---
*Created by Antigravity AI Assistant*