Cegid XRP Ultimate  |      Actualisé le 

Production

Principe de contrôle des contraintes opération - Génération de contraintes calculées

Objectif

Cette action a deux buts :
- contrôler la cohérence des contraintes opération saisies suivant des règles ;
- déduire et stocker de nouvelles contraintes : contraintes calculées.

L'ensemble des contraintes, saisies et calculées, sont utilisées pour :
- la planification et l'ordonnancement des opérations ;
- le suivi des saisies de la quantité réelle sur les opérations ;
- le calcul des répartitions de consommations par fabrication ;
- la traçabilité des lots ;
- etc.

Les contraintes opération étant présentes aussi bien au niveau des formules que des ordres de production, ces contrôles et calculs sont identiques, que l'on traite les contraintes entre opérations de formules (GCOFF) ou les contraintes entre opérations d'ordres de production (GCOO).


Déclenchement des contrôles et calculs

Deux modes de traitement ont été adoptés, le choix d'un de ces modes restant paramétrable dans les chemins (GCHM) (pour les formules) et dans les classes d'ordres (GNOR) (pour les ordres de production).

La première approche consiste à faire les contrôles et les calculs au fil des saisies et/ou des modifications de données. Par cette méthode, les données des contraintes sont toujours valides et les traitements s'appuyant sur ces calculs peuvent être lancés sans action préalable.

Une seconde méthode consiste à ne faire les contrôles et les calculs qu'une seule fois, lorsque toutes les données sont saisies et stabilisées. L'avantage de cette méthode est de ne pas répéter les calculs, inutiles avant la fin des saisies, et donc d'améliorer les performances lors des saisies.

Suivant le paramétrage, chaque création, suppression ou modification de données agissant sur les contraintes a pour conséquence :
- Un contrôle global des contraintes saisies, une suppression et une création des contraintes calculées pour l'entité. L'entité est l'ensemble de la formule ou de l'ordre de production suivant le cas. Ces actions sont effectuées pour les ordres de production si la case "contrôle automatique des contraintes" de la classe d'ordres (GNOR) est cochée. Elles sont réalisées pour les formules quand la zone "calcul automatique" du chemin (GCHM) vaut "ALL" ou "CCF".

- Pour les autres valeurs : il y a une suppression des contraintes calculées et un marquage de l'entité (la formule ou l'ordre de production). Ce dernier est utilisé dans le changement d'étape pour déterminer si le calcul des contraintes a été lancé ou non.

Cette action est répétée à chaque :
- création ou suppression de contraintes entre opérations ;
- modification du type ou de l'état d'une contrainte entre opérations ;
- modification de l'état d'une opération.


Principe des contraintes calculées

Les contraintes calculées sont stockées dans des tables distinctes et propres à chaque entité :
- table QACCF : contraintes calculées des opérations de formule ;
- table QACCO : contraintes calculées des opérations des ordres de production.

Elles contiennent l'ensemble des contraintes saisies dans les données d'exploitation et des contraintes dites "calculées", déduites des précédentes.
Pour ces contraintes calculées, on retrouve les types de contraintes classiques, référencés dans les données d'exploitation, à savoir :
- "DD" : le début de l'opération prédécesseur entraîne le début de l'opération successeur ;
- "FD" : la fin de l'opération prédécesseur entraîne le début de l'opération successeur ;
- "FF" : la fin de l'opération prédécesseur entraîne la fin de l'opération successeur.
A ces types de contraintes, ont également été ajoutés des liens entre opérations :
- "LL" : l'opération et l'opération prédécesseur sont dans le même groupe (ensemble de contraintes de type "DD" et "FF") ;
- "LD" : l'opération ou le groupe de l'opération est lié au début du groupe ou de l'opération prédécesseur ;
- "LF" : l'opération ou le groupe de l'opération est lié à la fin du groupe ou de l'opération précédente.

Dans un premier temps, toutes les données calculées pour l'ensemble de l'entité (la formule ou l'ordre de production) sont supprimées.
Un calcul est alors lancé en traitant, dans l'ordre, l'ensemble des contraintes saisies de type "DD", puis celles de type "FF" et enfin celles de type "FD".

Les règles de calculs sont les suivantes :

1) Pour une opération A liée par une contrainte de type "DD" ou "FF" à une opération B :
- l'opération B est liée par la même contrainte à l'opération A ;
- l'opération A est liée par un lien de type "LL" à l'opération B ;
- l'opération B est liée par un lien de type "LL" à l'opération A.

Première illustration

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE01 DD OPE02 L'opération OPE02 débute en même temps que l'opération OPE01


Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE01 DD OPE02 L'opération OPE02 débute en même temps que l'opération OPE01 Saisie
OPE02 DD OPE01 L'opération OPE01 débute en même temps que l'opération OPE02 Calculée
OPE02 LL OPE01 Les opérations OPE02 et OPE01 sont dans le même groupe de contraintes de type "DD" et "FF" Calculée
OPE01 LL OPE02 Les opérations OPE01 et OPE02 sont dans le même groupe de contraintes de type "DD" et "FF" Calculée

Seconde illustration

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE03 FF OPE04 L'opération OPE04 finie en même temps que l'opération OPE03


Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE03 FF OPE04 L'opération OPE04 finie en même temps que l'opération OPE03 Saisie
OPE04 FF OPE03 L'opération OPE03 finie en même temps que l'opération OPE04 Calculée
OPE04 LL OPE03 Les opérations OPE04 et OPE03 sont dans le même groupe de contraintes de type "DD" et "FF" Calculée
OPE03 LL OPE04 Les opérations OPE03 et OPE04 sont dans le même groupe de contraintes de type "DD" et "FF" Calculée

2) Si une opération A est liée par une contrainte de type "DD", "FF", "LL" à une opération B :
L'opération A est automatiquement liée, par la même contrainte, à l'ensemble des opérations liées à B par cette contrainte.

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE01 DD OPE02 ...
OPE03 FF OPE04 ...
OPE02 FF OPE03 L'opération OPE03 finie en même temps que l'opération OPE02


Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE01 DD OPE02 ... Saisie
OPE02 DD OPE01 ... Calculée
OPE01 LL OPE02 ... Calculée
OPE02 LL OPE01 ... Calculée
OPE03 FF OPE04 ... Saisie
OPE04 FF OPE03 ... Calculée
OPE03 LL OPE04 ... Calculée
OPE04 LL OPE03 ... Calculée
OPE02 FF OPE03 ... Saisie
OPE03 FF OPE02 ... Calculée
OPE02 LL OPE03 ... Calculée
OPE03 LL OPE02 ... Calculée
OPE02 FF OPE04 ... Calculée
OPE04 FF OPE02 ... Calculée
OPE02 LL OPE04 ... Calculée
OPE04 LL OPE02 ... Calculée
OPE03 LL OPE01 ... Calculée
OPE04 LL OPE01 ... Calculée
OPE01 LL OPE03 ... Calculée
OPE01 LL OPE04 ... Calculée

3) Pour une opération A, liée par une contrainte de type "FD" à une opération B :
- l'opération B et l'ensemble des opérations débutant en même temps que B, sont liées, par un lien de type "FD" à l'opération A et à l'ensemble des opérations finissant en même temps que A ;
- l'opération B et l'ensemble des opérations du même groupe que B, sont liées, par un lien de type "LF" à l'opération A et à l'ensemble des opérations du groupe de A ;
- l'opération A et l'ensemble des opérations du même groupe que A, sont liées, par un lien de type "LD" à l'opération B et à l'ensemble des opérations du groupe de B.

Première illustration

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE07 FD OPE08 L'opération OPE08 débute quand l'opération OPE07 se termine


Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE07 FD OPE08 L'opération OPE08 débute quand l'opération OPE07 se termine Saisie
OPE07 LD OPE08 Les opérations OPE07 est liée au début de l'opération OPE08 Calculée
OPE08 LF OPE07 Les opérations OPE08 est liée à la fin de l'opération OPE07 Calculée

Seconde illustration

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE02 DD OPE03 L'opération OPE03 débute en même temps que l'opération OPE02
OPE03 FF OPE04 L'opération OPE04 finie en même temps que l'opération OPE03
OPE05 DD OPE06 L'opération OPE06 débute en même temps que l'opération OPE05
OPE04 FD OPE05 L'opération OPE05 débute quand l'opération OPE04 se termine


Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE02 DD OPE03 ... Saisie
OPE03 DD OPE02 ... Calculée
OPE02 LL OPE03 ... Calculée
OPE03 LL OPE02 ... Calculée
OPE03 FF OPE04 ... Saisie
OPE04 FF OPE03 ... Calculée
OPE03 LL OPE04 ... Calculée
OPE04 LL OPE03 ... Calculée
OPE04 LL OPE02 ... Calculée
OPE02 LL OPE04 ... Calculée
OPE05 DD OPE06 ... Saisie
OPE06 DD OPE05 ... Calculée
OPE05 LL OPE06 ... Calculée
OPE06 LL OPE05 ... Calculée
OPE04 FD OPE05 ... Saisie
OPE03 FD OPE05 ... Calculée
OPE04 FD OPE06 ... Calculée
OPE03 FD OPE06 ... Calculée
OPE05 LF OPE04 ... Calculée
OPE05 LF OPE03 ... Calculée
OPE05 LF OPE02 ... Calculée
OPE06 LF OPE04 ... Calculée
OPE06 LF OPE03 ... Calculée
OPE06 LF OPE02 ... Calculée
OPE04 LD OPE05 ... Calculée
OPE03 LD OPE05 ... Calculée
OPE02 LD OPE05 ... Calculée
OPE04 LD OPE06 ... Calculée
OPE03 LD OPE06 ... Calculée
OPE02 LD OPE06 ... Calculée

4) Si une opération A est liée, par un lien de type "LD", "LF" ou une contrainte de type "FD" à une opération B :
L'opération A est automatiquement liée, par le même lien ou la même contrainte à l'ensemble des opérations liées à B par ce lien ou cette contrainte.

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE07 FD OPE08 L'opération OPE08 débute quand l'opération OPE07 se termine
OPE06 DD OPE07 L'opération OPE07 débute en même temps que l'opération OPE06
OPE05 FD OPE06 L'opération OPE06 débute quand l'opération OPE05 se termine


Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE06 DD OPE07 ... Saisie
OPE07 DD OPE06 ... Calculée
OPE06 LL OPE07 ... Calculée
OPE07 LL OPE06 ... Calculée
OPE05 FD OPE06 ... Saisie
OPE05 LD OPE06 ... Calculée
OPE06 LF OPE05 ... Calculée
OPE05 FD OPE07 ... Calculée
OPE05 LD OPE07 ... Calculée
OPE07 LF OPE05 ... Calculée
OPE07 FD OPE08 ... Saisie
OPE07 LD OPE08 ... Calculée
OPE08 LF OPE07 ... Calculée
OPE05 FD OPE08 ... Calculée
OPE05 LD OPE08 ... Calculée
OPE08 LF OPE05 ... Calculée
OPE06 LD OPE08 ... Calculée
OPE08 LF OPE06 ... Calculée


Règles de contrôle des contraintes

Les contrôles sont réalisés au fur et à mesure de la génération des contraintes calculées.
En effet, par ce principe, on retrouve l'ensemble des combinaisons possibles entre opérations, en fonction des contraintes saisies. Il n'est donc pas possible de pouvoir retrouver deux opérations liées par des contraintes calculées de type différent ou des liens différents.

Contrainte saisie dans les données d'exploitation
Opération précédente Type de contrainte Opération Signification
OPE01 DD OPE02 L'opération OPE02 débute en même temps que l'opération OPE01
OPE01 DD OPE03 L'opération OPE03 débute en même temps que l'opération OPE01
OPE02 FD OPE03 L'opération OPE03 débute quand l'opération OPE02 se termine

Contraintes calculées
Opération origine Type de contrainte ou de lien Opération destination Signification Origine
OPE01 DD OPE02 ... Saisie
OPE02 DD OPE01 ... Calculée
OPE01 LL OPE02 ... Calculée
OPE02 LL OPE01 ... Calculée
OPE01 DD OPE03 ... Saisie
OPE03 DD OPE01 ... Calculée
OPE01 LL OPE03 ... Calculée
OPE03 LL OPE01 ... Calculée
OPE02 DD OPE03 ... Calculée
OPE03 DD OPE02 ... Calculée
OPE02 LL OPE03 ... Calculée
OPE03 LL OPE02 ... Calculée
OPE02 FD OPE03 ... Saisie

Dans ces cas de figure, le message d'erreur
QACOF053 - Incohérence de lien entre l'opération '$1' '$2' et l'opération '$3' '$4' (n° interne : '$5')
ou
QACOO053 - Incohérence de lien entre l'opération '$1' '$2' et l'opération '$3' '$4' (n° interne : '$5')
suivant l'entité traitée, permet d'identifier les opérations posant problème.