29 entites · Migration quality_level implementee en DB (4 niveaux : 00=Neuf · 01=Reconditionne · 02=Rec. N2 · 03=Rec. N3) · SupplierQuotation enrichi (9 champs ajouts Phase 5) · SupplierQuotationLine enrichi (pos · description · oem_ref · unit) · validity_date sur SupplierQuotation (calcul auto depuis validity_days + quote_date)
Un Customer = un Sold To = 1 Bill To + N Ship To. Une meme adresse ShipTo peut etre partagee entre plusieurs Customers (N:N).
Incoterm + Carrier (v7.1) : chaque ShipTo porte ses conditions logistiques. Modifiables a la generation via Document.carrier_override et Document.incoterm_override.
Contexte atelier 7 : Les flacons de mercure (spare vials) pour Mercury Probe sont des Spare Parts (SPA), pas des Options logistiques. Ils ont ete reclassifies SPA en v8. La relation mere/composant est maintenant capturee dans ProductLink.
Tout objet ayant un cycle de vie a statuts (OrderProcessing, RMA, Quotation) enregistre chaque changement de statut avec sa date et l'auteur. Log immuable permettant de reconstituer la timeline de vie dans les ecrans NEXUS.
| Regle | Description | Champ / Entite |
|---|---|---|
| QualityLevel migrée en DB (v9) | Migration implementee en DB le 12/05/2026 — 130 produits migres. 4 niveaux : 00=Neuf · 01=Reconditionne · 02=Repare · 03=Grade B. L'enum quality est conservee en parallele pendant la periode de transition. Product.quality_level_id (NOT NULL FK) est la reference cannonique. Les codes mdc_ref existants restent valides — le suffixe -QAL correspond au code QualityLevel. |
quality_level · Product.quality_level_id (NOT NULL FK) |
| SupplierQuotation enrichi (v9) | Phase 5 (Screen 01) a ajoute 9 champs documentes en v9 : supplier_quotation_number · quote_date · mdc_request_ref · payment_terms · lead_time_raw · currency · validity_days · validity_date · filename. validity_date est toujours renseignee : extraite du PDF si presente, sinon calculee = quote_date + validity_days. quotation_id est nullable — un SupplierQuotation peut exister sans Quotation liee (devis spontane ou liste de prix annuelle). |
SupplierQuotation.validity_date · validity_days · quotation_id nullable |
| QualityLevel configurable (v8) | L'enum quality fixe (00=Neuf, 01=Reconditionne) est remplace par un referentiel editable QualityLevel. MDC peut ajouter de nouveaux niveaux de qualite sans modification du schema. Product.quality_level_id pointe sur ce referentiel. Les codes mdc_ref existants restent valides — le suffixe -QAL correspond au code QualityLevel. |
QualityLevel · Product.quality_level_id |
| Sales BOM / ProductLink (v8) | ProductLink capture les relations inter-produits : COMPONENT (composant vendu avec le produit mere, ex: spare vial avec Mercury Probe), SUBSTITUTE (alternative en cas de rupture), ACCESSORY (produit complementaire propose a la vente). Permet l'affichage "produits associes" sur l'ecran devis et la gestion des gammes d'accessoires Bart H. |
ProductLink.parent_product_id · ProductLink.child_product_id · ProductLink.link_type |
| Reclassification Mercury spare vials (v8) | Les flacons de mercure (spare vials) pour Mercury Probe sont des Spare Parts SPA (division 37 — Metrologie), pas des OPT logistiques. Corriges dans l'outil de codification v2.6. La relation au produit mere Mercury Probe est capturee dans ProductLink (COMPONENT, qty=1). | Product.product_type = SPA · ProductLink (COMPONENT) |
| TVA par pays (v7) | Country.default_vat_rate (taux par defaut, ex: France 20 %, Suisse 8,1 %) + Customer.vat_applicable (boolean) pour les exonerations (CERN, organismes internationaux). |
Customer.vat_applicable · Country.default_vat_rate |
| Incoterm sur Ship To (v7.1) | ShipTo.incoterm et ShipTo.incoterm_source portent les conditions de livraison par adresse. Pré-remplissent le document — modifiables via Document.incoterm_override et Document.carrier_override (nullable). ST Crolles x 4 confirmes en v8 avec leurs incoterms respectifs. |
ShipTo.incoterm · ShipTo.carrier · Document.incoterm_override · Document.carrier_override |
| Sold To / Bill To / Ship To | Un Customer = 1 Sold To = 1 Bill To + N Ship To. ShipTo partageable entre clients (N:N). Confirme en v8 avec ST Crolles x 4 dont ShipTo ECTRA partage entre ST Crolles 1 et ST Crolles 2. | Customer.bill_to · ShipTo (N:N via table liaison) |
| Codes sur les documents | Devis / Facture client / OC / Delivery notice → ProductCustomerCode.customer_ref. PO fournisseur → ProductSupplierCode.supplier_ref. Usage interne → Product.mdc_ref. |
ProductCustomerCode · ProductSupplierCode · Product |
| Alerte EUR1 | Si Document.total_ht > 6 000 EUR → bandeau d'alerte UI. EUR1 exige pour les expeditions hors UE au-dela de ce seuil. |
Document.eur1_required · Document.total_ht |