repair.order : champs, relations et API
Le modèle repair.order (« Ordre de réparation ») est un modèle persistant déclaré par le module Réparations, puis enrichi par 2 autres modules. Il expose 75 champs, dont 45 déclarés directement sur le modèle ; 3 champs d'autres modèles pointent vers lui. Retrouvez ci-dessous chaque champ avec son nom technique, son type, son libellé français et ses relations, puis un exemple d'appel à l'API JSON-2 d'Odoo 19.
Fiche d'identité
- Nom technique
repair.order- Libellé
- Ordre de réparation
- Type
- Persistant (models.Model)
- Table SQL
repair_order- Module d'origine
- Réparations (
repair) - Étendu par
- mrp_repair, purchase_repair
- Tri par défaut (_order)
priority desc, create_date desc- Hérite de (mixins)
- mail.threadmail.activity.mixinproduct.catalog.mixin
Champs du modèle
45 champs propres, 24 hérités des mixins et 6 champs automatiques de l'ORM. Cliquez sur un nom pour obtenir le lien direct vers le champ.
75 champs affichés sur 75
| Nom technique | Libellé | Type | Détails |
|---|---|---|---|
| allowed_lot_ids | Lot autorisé | one2many | calculé |
| allowed_uom_ids | Unité de mesure autorisée | many2many→ uom.uom | calculé |
| company_id | Société | many2one | requislecture seule |
| has_uncomplete_moves | Contient des mouvements incomplets | boolean | calculé |
| internal_notes | Notes internes | html | |
| is_parts_available | Toutes les pièces sont disponibles | boolean | calculé, stocké |
| is_parts_late | Toutes les pièces sont en retard | boolean | calculé, stocké |
| location_dest_id | Emplacement de destination des pièces ajoutées Il s'agit de l'emplacement où se situe le produit réparé. | many2one | requislecture seule related : |
| location_id | Emplacement d'origine des composants Il s'agit de l'emplacement où se trouvent les composants du produit à réparer. | many2one | requiscalculé, stocké |
| lot_id | Lot/série Les produits réparés appartiennent tous à ce lot | many2one | calculé, stocké |
| move_id | Mouvement de stock | many2one | lecture seule |
| move_ids | Pièces | one2many | inverse : |
| name | Référence de la réparation | char | requislecture seule |
| partner_id | Client Choisissez le partenaire pour qui la commande sera facturée et livrée. Vous pouvez trouver un partenaire par son nom, son NIF, son e-mail ou sa référence interne. | many2one | calculé, stocké |
| parts_availability | Statut des composants Dernier statut de disponibilité des pièces pour cet OR. Si vert, le statut de préparation de l'OR est prêt. | char | calculé |
| parts_availability_state | Statut de disponibilité des pièces | selection | calculé Valeurs : |
| parts_location_id | Emplacement de destination des pièces supprimées Il s'agit de l'emplacement où se situent les pièces de réparation. | many2one | requislecture seule related : |
| picking_id | Transfert Transfert à partir duquel le produit à réparer est prélevé | many2one | |
| picking_product_id | Produit de transfert | many2one | related : |
| picking_product_ids | Produit de transfert | one2many | calculé |
| picking_type_id | Type d'opération | many2one | requiscalculé, stocké |
| picking_type_visible | Type de transfert visible | boolean | calculé |
| priority | Priorité | selection | Valeurs : |
| product_id | Produit à réparer | many2one | |
| product_location_dest_id | Emplacement de destination du produit Il s'agit de l'emplacement où se situe le produit réparé. | many2one | requiscalculé, stocké |
| product_location_src_id | Emplacement d'origine du produit Il s'agit de l'emplacement où le produit à réparer se situe. | many2one | requiscalculé, stocké |
| product_qty | Quantité de produits | float | calculé, stocké |
| product_uom | Unité | many2one→ uom.uom | calculé, stocké |
| production_count | Nombre d'OF générés | integer | calculé ajouté par Réparations MRP ( |
| purchase_count | Nombre de bons de commande générés | integer | calculé ajouté par Réparation d'achat ( |
| recycle_location_id | Emplacement de destination des pièces recyclées Il s'agit de l'emplacement où se situent les pièces de réparation. | many2one | requiscalculé, stocké |
| reference_ids | Références | many2many | |
| repair_properties | Propriétés | properties | |
| repair_request | Demande de réparation Description de la ligne de commande | text | related : |
| reserve_visible | Autorisé à réserver la production Champ technique pour vérifier quand les quantités peuvent être réservées | boolean | calculé |
| sale_order_id | Commande client Bon de commande duquel provient l'ordre de réparation. | many2one | lecture seule |
| sale_order_line_id | Ligne de commande Ligne de commande de laquelle provient l'ordre de réparation. | many2one | lecture seule |
| schedule_date | Date planifiée | datetime | requis |
| search_date_category | Catégorie Date | selection | lecture seule Valeurs : |
| state | Statut * The 'New' status is used when a user is encoding a new and unconfirmed repair order. * The 'Confirmed' status is used when a user confirms the repair order. * The 'Under Repair' status is used when the repair is ongoing. * The 'Repaired' status is set when repairing is completed. * The 'Cancelled' status is used when user cancel repair order. | selection | lecture seule Valeurs : |
| tag_ids | Étiquettes | many2many | |
| tracking | Suivi de produit | selection | related : |
| under_warranty | Sous garantie Si cette option est cochée, le prix de vente sera défini sur 0 pour tous les produits transférés de l'ordre de réparation. | boolean | |
| unreserve_visible | Autorisé à annuler la réservation de production Champ technique à cocher si nous pouvons annuler la réservation | boolean | calculé |
| user_id | Responsable | many2one | |
| activity_calendar_event_id | Activité suivante de l'événement du calendrier | many2one | calculé hérité de mail.activity.mixin |
| activity_date_deadline | Date limite de l'activité à venir | date | lecture seulecalculé hérité de mail.activity.mixin |
| activity_exception_decoration | Indicateur d’exception d’activité Type d'activité d'exception enregistrée. | selection | calculé Valeurs : hérité de mail.activity.mixin |
| activity_exception_icon | Icône Icône pour indiquer une activité d'exception. | char | calculé hérité de mail.activity.mixin |
| activity_ids | Activités | one2many | inverse : hérité de mail.activity.mixin |
| activity_state | Statut de l'activité Status based on activities Overdue: Due date is already passed Today: Activity date is today Planned: Future activities. | selection | calculé Valeurs : hérité de mail.activity.mixin |
| activity_summary | Résumé de l'activité suivante | char | related : hérité de mail.activity.mixin |
| activity_type_icon | Icône de type d'activité | char | related : hérité de mail.activity.mixin |
| activity_type_id | Type d'activités à venir | many2one | related : hérité de mail.activity.mixin |
| activity_user_id | Utilisateur responsable | many2one | lecture seulecalculé hérité de mail.activity.mixin |
| has_message | A un message | boolean | calculé hérité de mail.thread |
| message_attachment_count | Nombre de pièces jointes | integer | calculé hérité de mail.thread |
| message_follower_ids | Abonnés | one2many | inverse : hérité de mail.thread |
| message_has_error | Erreur d'envoi du message Si coché, certains messages ont une erreur de livraison. | boolean | calculé hérité de mail.thread |
| message_has_error_counter | Nombre d'erreurs Nombre de messages avec des erreurs d'envoi | integer | calculé hérité de mail.thread |
| message_has_sms_error | Erreur d'envoi SMS Si coché, certains messages ont une erreur de livraison. | boolean | calculé hérité de mail.thread |
| message_ids | Messages | one2many | inverse : hérité de mail.thread |
| message_is_follower | Est un abonné | boolean | calculé hérité de mail.thread |
| message_needaction | Nécessite une action Si coché, de nouveaux messages demandent votre attention. | boolean | calculé hérité de mail.thread |
| message_needaction_counter | Nombre d'actions Nombre de messages nécessitant une action | integer | calculé hérité de mail.thread |
| message_partner_ids | Abonnés (Partenaires) | many2many | calculé hérité de mail.thread |
| my_activity_date_deadline | Échéance de mon activité | date | lecture seulecalculé hérité de mail.activity.mixin |
| rating_ids | Évaluations | one2many | inverse : hérité de mail.thread |
| website_message_ids | Messages du site web Historique de communication du site web | one2many | inverse : hérité de mail.thread |
| create_date | Créé le | datetime | lecture seuleautomatique |
| create_uid | Créé par | many2one | lecture seuleautomatique |
| display_name | Nom affiché | char | lecture seulecalculéautomatique |
| id | ID | integer | lecture seuleautomatique |
| write_date | Dernière mise à jour le | datetime | lecture seuleautomatique |
| write_uid | Dernière mise à jour par | many2one | lecture seuleautomatique |
Relations
Modèles liés depuis ce modèle
- product.product : picking_product_id, picking_product_ids, product_id
- repair.tags : tag_ids
- res.company : company_id
- res.partner : partner_id
- res.users : user_id
- sale.order : sale_order_id
- sale.order.line : sale_order_line_id
- stock.location : location_dest_id, location_id, parts_location_id, product_location_dest_id, product_location_src_id, recycle_location_id
- stock.lot : allowed_lot_ids, lot_id
- stock.move : move_id, move_ids
- stock.picking : picking_id
- stock.picking.type : picking_type_id
- stock.reference : reference_ids
- uom.uom : allowed_uom_ids, product_uom
Champs d'autres modèles qui pointent ici
- stock.lot : repair_line_ids
- stock.move : repair_id
- stock.warn.insufficient.qty.repair : repair_id
Lire ce modèle par l'API
Exemple d'appel à l'API JSON-2 d'Odoo 19 : lecture des cinq premiers enregistrements avec des champs réels du modèle. Remplacez l'instance, la base et la clé API par les vôtres.
curl -X POST "https://votre-instance.odoo.com/json/2/repair.order/search_read" \
-H "Authorization: bearer $ODOO_API_KEY" \
-H "X-Odoo-Database: votre-base" \
-H "Content-Type: application/json" \
-d '{"domain":[],"fields":["name","company_id","location_dest_id","location_id","parts_location_id"],"limit":5}'import requests
BASE_URL = "https://votre-instance.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "votre-base"}
res = requests.post(
f"{BASE_URL}/repair.order/search_read",
headers=headers,
json={"domain": [], "fields": ["name","company_id","location_dest_id","location_id","parts_location_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())- L'accès à l'API externe est réservé à la formule Custom d'Odoo.
- XML-RPC et JSON-RPC seront retirés dans Odoo 22 (automne 2028) : préférez JSON-2.
- Les droits d'accès et règles d'enregistrement de l'utilisateur de la clé s'appliquent.
Citer cet outil
Vous rédigez un tutoriel, une documentation interne ou une réponse sur un forum ? Copiez ce lien pour renvoyer vos lecteurs vers la fiche à jour.
<a href="https://aidoo.ai/fr/outils/explorateur-modeles-odoo/repair-order">repair.order (Odoo 19.0)</a>Sources
- Code source du modèle sur GitHub
- Documentation Odoo 19 : ORM API
- Documentation Odoo 19 : API externe JSON-2
Données vérifiées le 23 septembre 2026 · Odoo 19.0 Community
Vous avez un projet Odoo ou souhaitez exploiter votre ERP avec l'IA ? Échangeons
Intégration, développement de modules, connexion de Claude ou ChatGPT à vos données : décrivez-nous votre contexte, nous vous répondons sous 24 heures ouvrées.