Paramétrage > Stocks > Règles d'allocations / sorties 

Définition de l'allocation

L'allocation est une réservation de stockfaite pour être en mesure de réaliser un mouvement donné. Une allocation peut être globale (on s'assure simplement que des stocks sont disponibles compte tenu du statut demandé), ou détaillée (les lignes de stock sont alors physiquement identifiées). Ceci signifie qu'une allocation de stock précède en général un mouvement physique (il arrive qu'elle soit faite en même temps). Lorsque plusieurs lignes de stock sont disponibles pour un article donné, l'allocation détaillée va choisir celles qui seront effectivement utilisées.

Afin de rendre optimum ce choix lorsqu'il n'est pas forcé manuellement, il existe des algorithmes automatiques. Ces algorithmes sont paramétrables par le biais de cette fonction.

Règles d'allocation et règles de sortie

Les statuts d'articles qui peuvent faire l'objet d'une sortie de stock sont définis pour chaque mouvement de stock dans une table dédiée différente des règles d'allocation (elles sont reprises par ailleurs sur les catégories d'articles où elles peuvent être affinées si nécessaire). Il est donc possible d'avoir des règles différentes, plus restrictives dans un cas que dans l'autre, par exemple :

  • la règle d'allocation peut autoriser une allocation sur des statuts Q, alors que la règle de sortie l'interdit. Ceci peut être utile si les articles sont alloués assez longtemps à l'avance sur des stocks à cycle de renouvellement long. Pour que le mouvement de stock puisse être fait, il faudra que l'article ait été contrôlé entre temps. Si le statut du stock alloué est passé à A (ce qui est normalement probable), on pourra effectuer le mouvement de stock ; s'il est passé à R, il faudra réallouer.
  • la règle d'allocation peut interdire une allocation sur des statuts Q, alors que la règle de sortie l'autorise. Ceci est utile si la livraison d'un article en statut Q doit être exceptionnellement possible, mais de façon manuelle (en réalisant la sortie avec une allocation manuelle, suivie d'une livraison), alors que un traitement automatique d'allocation devra l'exclure.

Utilisation des règles d'allocation

Les règles d'allocation sont utilisées dans deux cas :

  • lorsqu'une allocation automatique est lancée (par exemple sur une commande, ou sur un ensemble de commandes, ou sur des OF). Dans ce cas, les règles sont appliquées à la lettre.
  • lorsqu'une allocation implicite est faite si le mouvement de stock est fait directement sans phase d'allocation préliminaire (par exemple un suivi d'OF, ou une livraison validée directement). Dans ce cas, les règles sont utilisées dans l'ordre des filtres pour rechercher les lignes éligibles, mais un filtrage complémentaire va être fait pour ne tenir compte, ligne de filtre par ligne de filtre, que des statuts de stocks effectivement susceptibles d'être sortis. Ce fonctionnement dépend du paramétrage de la transaction de document utilisée. Pour obtenir un tel fonctionnement il faudra paramétrer la transaction en activant la détermination des stocks. Si tel n'est pas le cas, aucune proposition ne sera effectuée et l'utilisateur devra manuellement choisir les lignes de stock à sortir.

SEEINFO Vous avez également la possibilité, par paramétrage, de disposer de différentes règles de sorties pour un même  type de mouvement au sein d'une catégorie. Ceci peut être réalisé en associant un code mouvement différent à chacune des règles. Ces codes mouvements sont ensuite associés à une transaction de document. De fait, en fonction de la transaction de document utilisée, vous pourrez utiliser telle ou telle règle de sortie. Cela permet par exemple de disposer d'une transaction réservée à un groupe d'utilisateurs autorisés permettant de faire des sorties de stock en statut Q alors que les utilisateurs non autorisés ne pourront réaliser ce type de sorties.

Pré-requis

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre

Gestion de l'écran

Une règle d'allocation est identifiée par un code sur 6 caractères, un intitulé, un ordre de parcours global des lots, et un ensemble de lignes de filtres. Un commentaire explicatif peut également être saisi dans le bloc inférieur de l'écran.

Une fois ces informations saisies, la règle peut être utilisée (dans les catégories articles pour chaque famille de mouvement).

Ecran de saisie

Présentation

Principe de paramétrage des règles d'allocation

Les règles d'allocation sont définies dans cette fonction. Pour un article donné, plusieurs règles d'allocation peuvent être définies, chaque règle étant associée, dans la table des catégories d'article, à l'origine des mouvements (on distingue une règle applicable aux mouvements de Négoce, une règle applicable aux mouvements liés à la Production, une règle applicable aux Mouvements internes(sorties diverses et réapprovisionnement des zones de consommation), et une règle applicable aux mouvements de Réapprovisionnement Sous-traitance(fonction de réapprovisionnement des zones de consommation pour les emplacements sous-traitant).

Une règle d'allocation est composée :

  • d'un ordre global de parcours des lots défini en tête (ce peut être par ordre chronologique de lot, par FIFO, par FEFO, ou par LIFO),
  • d'un champ pour forcer l'utilisation d'un lot unique pour couvrir le besoin,
  • et d'un ensemble de lignes, chacune définissant un sous-algorithme de recherche. Ces lignes sont appelées « lignes de filtre ».

Pour allouer un article, on exécute l'algorithme de recherche du premier filtre, afin d'obtenir une ou plusieurs de lignes de stock éligibles. En effet, chaque ligne définit des critères de filtrage utilisées pour déterminer les lignes de stock allouables.

L'ordre global de parcours sert à choisir l'ordre des lignes de stock à considérer lors de l'exécution d'une ligne de filtre (à l'exception du cas où le paramètre Tri par coefficient est renseigné).

Si les quantités trouvées dans cette première passe de filtre sont suffisantes pour répondre à l'allocation, on s'arrête là. Sinon, on exécute l'algorithme de recherche avec les règles du deuxième filtre, et ainsi de suite, jusqu'à ce que l'on ait trouvé les quantités nécessaires (ou que l'on finisse par constater que le stock n'est pas disponible et que l'on ait une rupture).

Sur une ligne de filtre, les paramètres donnés sont les suivants :

  • un filtre Qualité, qui permet de définir quels statuts sont utilisables dans l'allocation (il peut s'agir de combinaison de statuts A,Q, et R).
  • un filtre Emplacement, qui peut prendre les valeurs : Pas de filtre,Emplacement local, Emplacement article. La première valeur signifie que tous les emplacements peuvent être éligibles, les valeurs Emplacement article et Emplacement localsignifiant que l'on ne considère que des emplacements dédiés définis par ailleurs, et décrits dans l'annexe ci-dessous.
  • des indicateurs UD(unité du document), US(unité de stock), et UC(unités de conditionnement), qui permettent de définir quelles sont les unités acceptables pour réaliser l'allocation. L'unité du document est l'unité utilisée en saisie du document d'origine, l'unité de stock et les unités de conditionnement étant définies dans la fiche article.
  • un filtre coefficient permettant, lorsque l'on a des coefficients variables entre l'unité de la ligne et l'unité de stock, de définir si on filtre sur la valeur de ce coefficient (les valeurs possibles sont Pas de filtre,Coefficient =, Coefficient <=, Coefficient >=). Dans tous les cas (sauf si on ne filtre que les coefficients égaux), on a la possibilité de trier sur la valeur des coefficients (en croissant ou décroissant, la règle globale de tri n'étant alors appliquée qu'en cas d'égalité)

Afin d'éclairer la façon dont ce paramétrage permet de gérer les allocations, reportez-vous ci-dessous aux exemples de paramétrage avec leur résultat.

 

Champs

Les champs suivants sont présents dans cet onglet :

Bloc numéro 1

  • Règle (champ TRUCOD)

Code de la règle d'allocation/sortie.
Les règles d'allocation/sortie à utiliser pour un article sont définies dans la catégorie article.

  • Intitulé (champ TRUAXX)

 

Bloc numéro 2

  • Ordre des lots (champ LOTMGT)

Déterminez l'ordre dans lequel les lots seront exploités lors des automatismes d'allocation et de sortie.
Les valeurs possibles sont :

  • Par lot(ordre alphabétique des lots)
  • FIFO
  • FEFO
  • LIFO

Contraintes

  • Mono-lot (champ UNTLOT)

Permet d'imposer une allocation ou une sortie sur un lot unique lors de l'éxécution des automatismes.

Si aucun lot ne couvre complètement le besoin :

  • une rupture de la totalité du besoin est générée lors de l'allocation
  • la fenêtre de détail s'ouvre pour choisir les lignes de stock en sortie directe. Un message d'avertissement apparaît alors si l'utilisateur sélectionne des lignes de stock avec des lot différents.
  • UC complète (champ CPLPCU)

Cochez cette case pour forcer l'allocation pour des unités de conditionnement (UC) complètes. La quantité restante sera allouée ou sortie du stock en unité de stock (US).

Tableau Règles d'allocations / sorties

  • Filtre qualité (champ STAFLT)

Statuts autorisés lors de l'allocation.

  • Filtre emplacement (champ LOCFLT)

Utilisez ce champ pour filtrer le stock avec l'emplacement indiqué.
Les différentes valeurs possibles sont :

  • Pas de filtre
  • Emplacement local : cette valeur est utilisée uniquement dans le cas de la production.
    Il s'agit de l'emplacement atelier défini dans le poste de charge,
  • Emplacement 1/2/3 article: ce champ permet de préciser un ou plusieurs emplacements pour le stock à allouer.
    Ces emplacements sont définis dans l'article-site : cette définition est fonction de la catégorie d'emplacement trouvé dans la règle de gestion, relative à ce mouvement.
  • UD (champ DOCFLT)

Indiquez s'il faut prendre en compte le stock dont l'unité de conditionnement correspond à l'unité du document origine.

  • US (champ STUFLT)

Indiquez s'il faut prendre en compte le stock dont l'unité de conditionnement correspond à l'unité de stock.

  • UC (champ PCUFLT)

Indiquez s'il faut prendre en compte le stock dont l'unité de conditionnement correspond aux autres unités.

  • Filtre coefficient (champ COEFLT)

Utilisez ce champ pour filtrer le stock selon les valeurs du coefficient UC/US de la ligne de stock par rapport au coefficient demandé sur la ligne de document.
Les valeurs possibles sont :

  • Pas de filtre
  • Coeff =  : Le coefficient UC/US de la ligne de stock doit être identique à celui demandé dans la ligne de document.
  • Coeff <= : Le coefficient UC/US de la ligne de stock doit être <= à celui demandé dans la ligne de document.
  • Coeff >= : Le coefficient UC/US de la ligne de stock doit être >= à celui demandé dans la ligne de document.
  • Tri par coefficient (champ COESOR)

Utilisez ce champ pour indiquer, pour chaque unité autorisée, comment sont ordonnées les lignes de stock. Le tri s'effectue selon la valeur du coefficient UC/US.
Les valeurs possibles sont :

  • Non
  • Décroissant
  • Croissant

Description détaillée

  • champ TEX

Pas d'aide liée à ce champ.

 

Exemples d'utilisation

Définition de l'article, des lignes de stock disponibles, et de la demande exprimée dans le document

Intéressons-nous à un article dont l'unité de stock est le mètre, pouvant aussi être stocké en rouleaux ou en bobines. Cet article est stocké dans des emplacements de masse, mais on a aussi défini un emplacement de picking codé PICK qui correspond, pour le mouvement de stock envisagé, à l'emplacement article.

Imaginons que nous disposions, pour cet article, des lignes de stock suivantes (seules les informations intéressantes sont données dans le tableau) :

No

Emplact

Statut

Lot

Date entrée

Péremption

Unité

Coefficient

Quantité

1

 

A

01

01/05

01/08

M

1

10

2

 

A

08

01/01

01/09

M

1

5

3

PICK

A

03

01/03

01/08

ROUL

10

2

4

PICK

A

04

01/04

01/10

ROUL

20

2

5

 

A

02

01/05

01/08

ROUL

50

2

6

 

Q

05

01/02

 

ROUL

20

2

7

 

Q

08

01/01

01/09

ROUL

25

15

8

PICK

A

06

 

01/09

BOB

2

1

9

 

A

07

 

 

BOB

6

2

10

 

A

09

 

 

BOB

8

1

Sur la ligne de document il y a 4 rouleaux de 20 mètres (soit 80 mètres en tout) à allouer.

Premier exemple de règle

Soit la règle d'allocation suivante :

Ordre des lots = FIFO

Filtre qualité

Filtre Emplacement

UD

US

UC

Filtre coef

Tri par coef

Statut A+Q

Pas de filtre

Oui

Non

Non

Coefficient <=

Non

Statut A+Q

Pas de filtre

Oui

Oui

Oui

Pas de filtre

Croissant

L'algorithme va alors se dérouler comme suit :

*on ne recherche que les lignes exprimées dans l'unité ROUL (US et autres UC proscrites), dont le statut soit A ou Q (les lignes 3 à 7 sont possibles), et dont le coefficient soit 20 ou moins (ce qui revient à dire que l'on préfère regrouper des bobines de quantité inférieure à la quantité demandée plutôt que de dérouler partiellement des bobines ; on élimine donc les lignes 5 et 7). On les parcourra dans l'ordre FIFO. Il nous reste donc les lignes suivantes, classées dans cet ordre :

 

No

Statut

Date entrée

Unité

Coefficient

Quantité

 

6

Q

01/02

ROUL

20

2

 

3

A

01/03

ROUL

10

2

 

4

A

01/04

ROUL

20

2

On va donc allouer les 80 unités demandées sous la forme suivante : 2 rouleaux de 20 (en statut Q), puis un 2 rouleaux de 10 (en statut A), puis 1 rouleau de 20. Le besoin étant couvert, le deuxième filtre n'a pas été utilisé

Deuxième exemple de règle

Soit à présent la règle d'allocation suivante :

Ordre des lots = FIFO

Filtre qualité

Filtre Emplacement

UD

US

UC

Filtre coef

Tri par coef

Statut A

Pas de filtre

Oui

Non

Non

Coefficient =

Non

Statut A+Q

Pas de filtre

Oui

Oui

Non

Pas de filtre

Croissant

Avec les mêmes lignes de stock que précédemment, l'algorithme va alors se dérouler comme suit :

on ne recherche que les lignes exprimées dans l'unité ROUL (US et autres UC proscrites), dont le statut soit A, et dont le coefficient soit égal à la demande. Ceci signifie que seule la ligne 4 est éligible, mais elle ne suffit pas à couvrir l'allocation (quantité totale=40). On va donc utiliser le deuxième filtre.

*Le deuxième filtre permet de prendre les lignes de statut A ou Q, en unités ROUL ou mètre, triées en coefficient croissant (on va donc s'intéresser au vrac en mètre, puis aux lignes intégrant des rouleaux dans l'ordre croissant du nombre de mètres). A égalité de coefficient, les lignes seront triées dans l'ordre FIFO.

Au final, les lignes examinées seront, dans l'ordre, les suivantes :

 

No

Statut

Date entrée

Unité

Coefficient

Quantité

 

4

A

01/04

ROUL

20

2

 

2

A

01/01

M

1

5

 

1

A

01/05

M

1

10

 

3

A

01/03

ROUL

10

2

 

6

Q

01/02

ROUL

20

2

 

7

Q

01/01

ROUL

25

15

 

5

A

01/05

ROUL

50

2

Ainsi cette allocation se fera sous la forme suivante : 2 rouleaux de 20 mètres, 5 mètres en vrac, 10 mètres en vrac, 2 rouleaux de 10, et 0,25 rouleau de 20. La façon dont la dernière ligne de stock sera traitée à la sortie effective dépendra de la gestion de l'unité qui lui est appliquée : soit elle sera gérée en unités fractionnaires (il restera 1,75 rouleaux de 20), soit elle sera scindée en deux lignes avec fractionnement (l'une en mètres, quantité 15, l'autre restant en rouleaux de 20, quantité 1) soit elle sera scindée en deux lignes avec quantité variable (rouleau de 15 mètres, quantité 1 d'une part, rouleau de 20 mètres, quantité 1 d'autre part). On trouvera les règles détaillées de gestion des unités dans les catégories article par défaut.

Troisième exemple de règle

Soit à présent la règle d'allocation suivante :

Ordre des lots = FEFO

Filtre qualité

Filtre Emplacement

UD

US

UC

Filtre coef

Tri par coef

Statut A

Emplacement article

Oui

Non

Non

Coefficient =

Non

Statut A

Emplacement article

Oui

Oui

Non

Pas de filtre

Non

Statut A

Pas de filtre

Oui

Oui

Oui

Pas de filtre

Croissant

Avec les mêmes lignes de stock que précédemment, l'algorithme va alors se dérouler comme suit :

*Le premier filtre ne considère que l'emplacement PICK, en statut A, uniquement en rouleaux de 20 mètres. La ligne de stock 4 est la seule qui réponde, mais elle ne suffit pas à couvrir le besoin.

*Le second filtre ne considère que l'emplacement PICK, en statut A, en rouleaux ou en vrac. Les lots expirant d'abord sont privilégiés. Les lignes de stock 3 et 8 répondent dans cet ordre, mais la quantité à allouer n'est toujours pas couverte.

*Toutes les autres lignes en statut A sont à présent considérées, quelles que soient leur unité, mais elles sont triées par coefficient croissant. Les lignes admissibles sont, dans l'ordre, les lignes 1 et 2 (elles ont la même quantité unitaire, on les prend donc dans l'ordre des dates d'expiration), puis les lignes 9 et 10.

Au final, les lignes examinées seront, dans l'ordre, les suivantes :

 

No

Emplacement

Statut

Péremption

Unité

Coefficient

Quantité

 

4

PICK

A

01/10

ROUL

20

2

 

3

PICK

A

01/08

ROUL

10

2

 

8

PICK

A

01/09

BOB

2

1

 

1

 

A

01/08

M

1

10

 

2

 

A

01/09

M

1

5

 

9

 

A

 

BOB

6

2

 

10

 

A

 

BOB

8

1

 

5

 

A

 

ROUL

50

2

Ainsi cette allocation se fera sous la forme suivante : 2 rouleaux de 20 mètres, 2 rouleaux de 10 mètres, 1 bobine de 2 mètres, 10 mètres en vrac, 5 mètres en vrac, 0,5 bobine de 6 mètres.

Quatrième exemple de règle

Soit enfin la règle d'allocation suivante :

Ordre des lots = Lot

Filtre qualité

Filtre Emplacement

UD

US

UC

Filtre coef

Tri par coef

Statut A

Pas de filtre

Oui

Non

Non

Coefficient =

Non

Statut A

Pas de filtre

Oui

Oui

Oui

Pas de filtre

Non

Avec les mêmes lignes de stock que précédemment, l'algorithme va alors se dérouler comme suit :

*Le premier filtre ne considère que les rouleaux de 20 mètres, en statut A. La ligne de stock 4 est la seule qui réponde, mais elle ne suffit pas à couvrir le besoin.

*Le second filtre ne considère que les statuts A, quel que soit leur emplacement et leur unité, dans l'ordre croissant des numéros de lot. Les lignes considérées sont dans l'ordre les lignes 1, 5, 3, 8, 9, 2, 10, mais le besoin est couvert avec les lignes 1 et 5.

 

No

Statut

Lot

Unité

Coefficient

Quantité

 

4

A

04

ROUL

20

2

 

1

A

01

M

1

10

 

5

A

02

ROUL

50

2

 

3

A

03

ROUL

10

2

 

8

A

06

BOB

2

1

 

9

A

07

BOB

6

2

 

2

A

08

M

1

5

 

10

A

09

BOB

8

1

Ainsi cette allocation se fera sous la forme suivante : 2 rouleaux de 20 mètres, 1 rouleau de 10 mètres, et 0,6 rouleau de 50 mètres.

Annexe : Définition des emplacements par défaut

La notion d'emplacement par défaut est définie dans la fiche Article/site. On y trouve un tableau de définition des emplacements et types d'emplacement par défaut. En fonction de l'article, on peut disposer de plusieurs emplacements par défaut, en leur donnant des noms différents (par exemple Picking, Retour, Quai, Stockage…). Les intitulés (et le nombre d'emplacement gérés) sont définis dans la Catégorie article. Ainsi, on pourra définir sur la fiche article/site d'un article acheté et vendu 3 emplacements nommés Réception, Stockage, Picking alors qu'une matière première utilisée dans une fabrication n'en aura que 2 (Réception, Poste de travail).

Toujours dans la Catégorie article, associé à chaque type de mouvement (et éventuellement à des sous-types), on peut définir un emplacement préférentiel (par exemple un emplacement de picking). Cet emplacement préférentiel peut être un critère de filtrage prioritaire (c'est l'emplacement nommé Emplacement article dans le filtre Emplacement). On pourra définir un ensemble d'emplacements ou de types d'emplacements préférentiels en utilisant une racine suivi du caractère (*) ou en utilisant le caractère (?) pour ne pas spécifier certains caractères du code emplacement ou du code type d'emplacement. Dans ce cas, la recherche se fera sur tous les emplacements/types d'emplacements ayant la même racine ou des caractères masqués. En cas de rupture sur tous les emplacements, aucun code emplacement ne sera enregistré dans la rupture. Une rupture de ce type ne pourra être régularisée automatiquement par une entrée qu'a condition que l'entrée se fasse sur un des emplacements décrit par les règles. Si aucun emplacement/type d'emplacement n'est précisé sur la fiche article/site (au joker (*) uniquement), le système se comportera comme s'il n'y avait pas d'emplacement préférentiel.

Dans la plupart des cas, un seul emplacement par défaut suffit, et sa définition directement dans la fiche Article/site, en fonction des règles définies, est suffisante. Mais il y a quelques cas particuliers où on aimerait disposer d'un emplacement par défaut défini autrement. Il s'agit des cas suivants :

*Le suivi matière, lorsque l'opération est normale, et lorsqu'il existe un emplacement lié au poste de charge.

*Le suivi matière, lorsque l'opération est de type sous-traitance, et lorsqu'il existe un emplacement de type Tiersassocié au fournisseur.

Pour imposer le choix de cet emplacement dans l'algorithme d'allocation, il suffit d'indiquer Localdans le filtre Emplacement.

Etats

Par défaut, les états suivants sont associés à la fonction :

 PRTSCR : Impression écran

Mais ceci peut être modifié par paramétrage.

Actions spécifiques

Les champs suivants sont présents dans la fenêtre ouverte par ce bouton :

Bloc numéro 1

  • champ OBJET

 

  • champ CLES

 

Bloc numéro 2

  • Depuis le dossier (champ DOSORG)

Indiquez le dossier à partir duquel la fiche va être copiée. Les syntaxes possibles sont décrites dans l'annexe dédiée.

  • Tous dossiers (champ TOUDOS)

Cette option permet de copier la fiche vers tous les dossiers définis dans le dictionnaire (table ADOSSIER de la solution courante).

  • Vers le dossier (champ DOSDES)

Indiquez le dossier dans lequel la fiche va être copiée. Les syntaxes possibles sont décrites dans l'annexe dédiée.

Cliquez sur cette action pour copier le paramétrage depuis ou vers un autre dossier.

Messages d'erreur

Il n'y a pas de message d'erreur autre que les messages d'erreur génériques.

Tables mises en oeuvre

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre