---
title: "Manufacturing"
description: "Nomenclatures. Chaque application est un module sur un même modèle de données."
canonical: "https://obop-platform.sliplane.app/fr/apps/manufacturing/"
lang: "fr"
---

# Manufacturing

## À quoi elle sert

Define what a product is made of and plan manufacturing orders through draft, confirmed, in progress and done. Component stock is not consumed automatically.

## Ce que fait et ne fait pas le paquet

Bills of materials and manufacturing orders with a draft, confirmed, in progress and done flow. Component stock is not consumed automatically.

## Modèles

### `manufacturing_bom`

A recipe: the components needed to make a product

Groupe de lecture: `manufacturing.user`. Groupe d'écriture: `manufacturing.manager`.

| Champ | Type | Classe de données | Données personnelles | Groupe | Vu par les agents | Description |
|---|---|---|---|---|---|---|
| `product_id` | ref → product | `none` | non | `manufacturing.user` | en clair | The finished product the recipe makes |
| `name` | text | `none` | non | `manufacturing.user` | en clair | Name of the recipe, for example Standard assembly |
| `quantity` | number | `none` | non | `manufacturing.user` | en clair | Units of the finished product one run produces |
| `instructions` | longtext | `none` | non | `manufacturing.user` | en clair | Assembly notes for the shop floor |
| `active` | bool | `none` | non | `manufacturing.user` | en clair | Whether the recipe can be used for new orders |

### `manufacturing_bom_line`

One component of a bill of materials

Groupe de lecture: `manufacturing.user`. Groupe d'écriture: `manufacturing.manager`.

| Champ | Type | Classe de données | Données personnelles | Groupe | Vu par les agents | Description |
|---|---|---|---|---|---|---|
| `bom_id` | ref → manufacturing_bom | `none` | non | `manufacturing.user` | en clair | The recipe the component belongs to |
| `component_id` | ref → product | `none` | non | `manufacturing.user` | en clair | The product consumed |
| `quantity` | number | `none` | non | `manufacturing.user` | en clair | Units of the component used per run |

### `manufacturing_order`

An instruction to produce a quantity of a product

Groupe de lecture: `manufacturing.user`. Groupe d'écriture: `manufacturing.user`.

| Champ | Type | Classe de données | Données personnelles | Groupe | Vu par les agents | Description |
|---|---|---|---|---|---|---|
| `reference` | text | `none` | non | `manufacturing.user` | en clair | Order number, for example MO-0042 |
| `bom_id` | ref → manufacturing_bom | `none` | non | `manufacturing.user` | en clair | The recipe to follow |
| `quantity` | number | `none` | non | `manufacturing.user` | en clair | Units of the finished product to make |
| `planned_on` | date | `none` | non | `manufacturing.user` | en clair | Date production should start (YYYY-MM-DD) |
| `deadline` | date | `none` | non | `manufacturing.user` | en clair | Date the goods are needed (YYYY-MM-DD) |
| `responsible` | text | `internal` | oui | `manufacturing.user` | masqué | Name of the person in charge of the run |
| `state` | select (draft, confirmed, in_progress, done, cancelled) | `none` | non | `manufacturing.user` | en clair | Order status: draft, confirmed, in_progress, done, cancelled |

## Flux de travail

### `manufacturing_order`

| Action | Transition | Qui peut l'exécuter | Approbation |
|---|---|---|---|
| `manufacturing_order.confirm` | state: draft → confirmed | `manufacturing.manager` | non |
| `manufacturing_order.start` | state: confirmed → in_progress | `manufacturing.user` | non |
| `manufacturing_order.finish` | state: in_progress → done | `manufacturing.user` | non |
| `manufacturing_order.cancel` | state: draft → cancelled | `manufacturing.user` | non |

## Groupes de permissions

Groupes utilisés par cette application :

- `manufacturing.manager`
- `manufacturing.user`

## Étapes d'approbation

Aucune étape de cette application ne requiert d'approbation, hormis la suppression d'enregistrements.

## Ce que les agents peuvent et ne peuvent pas faire

Un agent peut lire, rechercher, créer et modifier les enregistrements de cette application, et exécuter les actions qui ne requièrent pas d'approbation, dans les limites des groupes de permissions de son jeton.

Il ne peut que proposer ces étapes, qu'une personne doit approuver : `manufacturing_bom.delete`, `manufacturing_bom_line.delete`, `manufacturing_order.delete`.

Les données personnelles sont masquées sous forme de jetons de substitution : `manufacturing_order.responsible`.

## Dépendances

- `product`

## Installation

Installez-la depuis l'application Customize (Place de marché), ou en ligne de commande :

```bash
obop modules install-from manufacturing
```

Nécessite une base de données et des droits d'administrateur.

## Créer la vôtre

[Le guide des modules montre comment sont écrites les applications de ce type](/fr/docs/reference/module-manifest/)
