Files
Odoo-Modules/fusion-plating/fusion_plating_bridge_quality/README.md
gsinghpal be611876ad changes
2026-04-12 09:09:50 -04:00

82 lines
3.1 KiB
Markdown

# Fusion Plating — Quality Bridge (EE)
Part of the Fusion Plating product family by Nexa Systems Inc.
One-way sync from Fusion Plating NCRs to Odoo Enterprise `quality.alert`
records. Lets plating shops running Odoo EE keep using the Fusion Plating
QMS (CE + EE compatible) while getting the benefit of EE's native quality
dashboards on the same data.
## Status
| Item | Value |
| --- | --- |
| Odoo version | 19.0 |
| License | OPL-1 |
| Auto-install | Yes — when `fusion_plating_quality` AND EE `quality` are both installed |
| Sync direction | One-way: NCR → quality.alert |
## How it works
1. Creating or updating a `fusion.plating.ncr` record triggers
`_sync_to_quality_alert()` in `models/fp_ncr.py`.
2. The bridge builds a vals dict from the NCR and creates (or updates) the
linked `quality.alert` record under a dedicated **Plating Quality** team.
3. The bridge is defensive: every field write is gated on the live
`quality.alert` schema so a minor EE release that renames or drops a
field does not break NCR saves.
4. If `quality.alert` is not available for any reason, the sync silently
no-ops — NCRs continue to work normally in the base QMS module.
## Field mapping
| Fusion Plating NCR | Odoo EE quality.alert |
| --- | --- |
| `description` (first line) | `name` / `title` |
| `description` (full html) | `description` (if html) or stripped text |
| `containment` | `action_corrective` (if present) |
| `root_cause` | `action_preventive` (if present) |
| `severity` | `priority` (0/1/2/3 star) |
| `state` | `stage_id` (best-effort name match) |
| `customer_partner_id` | `partner_id` |
| `company_id` | `company_id` |
| — | `team_id` (always "Plating Quality") |
## Per-record controls
Each NCR gains three `x_fc_*` fields (visible under the **Quality Alert
Sync** notebook page on the NCR form):
- `x_fc_auto_sync` — toggle per-record sync; set to False to freeze the
mirror on a specific NCR
- `x_fc_quality_alert_id` — read-only pointer to the mirrored alert
- `x_fc_quality_alert_synced` — read-only "has been synced at least once"
flag
## Manual sync
Use the **Sync to Quality** header button on the NCR form to push the
latest values on demand. The mirrored alert's **Quality Alert** smart
button jumps straight to the linked EE record.
## What the bridge does NOT do
- **No write-back.** Edits to the EE `quality.alert` record are not
propagated back into Fusion Plating. NCR is the source of truth.
- **No CAPA mirroring.** Fusion Plating CAPAs remain in
`fusion.plating.capa`; they are not copied into `quality.point` or
`quality.check`.
- **No historical backfill.** Existing NCRs created before this module was
installed are not synced automatically — run the **Sync to Quality**
button manually on the ones you want mirrored.
## Notes for deployment
- If your EE release uses `quality.team` instead of `quality.alert.team`,
edit `data/quality_alert_team_data.xml` to match and reinstall the
module. No Python changes required.
- The sync runs with `sudo()` so shop operators without direct write
access to the EE quality module still produce mirrored alerts cleanly.
Copyright (c) 2026 Nexa Systems Inc. All rights reserved.