Skip to main content
Skip table of contents

Les requêtes de lissage-REB/PLA


Introduction

Le lissage consiste à déplacer une partie de la charge dans le cas d’une surcharge ou d’une sous-charge. On peut déplacer cette charge dans le temps, ou sur une autre ressource moins chargée.

Le lissage est lancé manuellement par l’utilisateur à partir du tableau de bord de charge, et fait appel à des requêtes de type REB/PLA.

Ces requêtes appellent les listes WfPlaIniDem et WfPlaDepDem : c’est ce qui permet à DIAPASON de catégoriser ces requêtes en PLA !

Il y a différentes manières de déplacer la charge dans le temps:

Attention, pour utiliser ces requêtes de lissage REB/PLA, il faut utiliser la visualisation standard (en mode simulation) du tableau de bord de charge et pas le tableur du DIAPASON START.

Dans nos exemples, nous allons travailler sur la gamme suivante:

Comment lancer l'action de lissage depuis le tableau de bord de charge ?

Comme ceci !

( extrait de la page Réaliser un lissage depuis le tableau de bord de charge )

Réaliser un lissage depuis le tableau de bord de charge
  1. On lance l’action de Traçabilité depuis le tableau de bord de charge

  1. Au clic. doit, on sélectionne “Règle de lissage”

  1. Puis, on sélectionne la bonne requête de lissage dans le tableau qui s’affiche

SI on relance plus tard une autre action de lissage, il faudra de nouveau entrer la règle de lissage, celle-ci n’est pas enregistrée… mais on on le souhaite, on peut la renseigner dans la définition du tableau de bord de charge. A ce moment-là, elle sera toujours séléctionnée !

  1. Une fois la requête sélectionnée, on fait clic droit et “Lissage”

  1. Si la requête de lissage demande des critères, on les rentre à ce moment ! Et le tour et joué ! 🙂

Principe de la requête de lissage

Le déroulement du traitement pour les actions de lissage (liste Traçabilité), (liste Historique Simulations) et (liste Détail Historique Simulations) suit le principe suivant :

1. Exécution requête DIALOG de lissage :

a. Initialisation critères.

Les variables critères saisies sont renseignées, avec les variables critères standard complémentaires suivantes :

Variable

Description

SCR.PlaTBoRef 

Tableau de bord de charge en cours

SCR.ResGenRef 

Ressource origine traçabilité

SCR.PlaUMCRef 

Unité de mesure de charge origine traçabilité

SCR.PlaDetCap 

Détail de capacité origine traçabilité

SCR.PlaDetCha 

Détail de charge origine traçabilité

SCR.PlaLisMod 

contient « TRA »

  • La liste PlaIniDepDem contenant la liste des articles sélectionnés sur la liste de traçabilité de charge avant le déclenchement de l’action de lissage

Depuis la liste des actes de simulation, le contexte initial d’exécution de la requête REB est le suivant :

Les variables critères saisies sont renseignées, avec les variables critères standard complémentaires suivantes :

Variable

Description

SCR.PlaLisMod 

contient « TRA »

  • La liste PlaIniDepDem est initialisée avec tous les articles de tous les actes de simulation sélectionnés avant le déclenchement de l’action de lissage ; dans ce cas, un même article peut apparaître plusieurs fois dans cette liste (s’il y a eu pour un même article plusieurs actions lors d’un même acte de lissage ou si le même article apparaît dans plusieurs actes de lissages).

Depuis la liste des détails des actes de simulation, le contexte initial d’exécution de la requête REB est le suivant :

Les variables critères saisies sont renseignées, avec les variables critères standard complémentaires suivantes :

Variable

Description

SCR.PlaLisMod 

contient « TRA »

  • La liste PlaIniDepDem est initialisée avec tous les articles de tous les actes de simulation sélectionnés avant le déclenchement de l’action de lissage ; dans ce cas, un même article peut apparaître plusieurs fois dans cette liste (s’il y a eu pour un même article plusieurs actions lors d’un même acte de lissage ou si le même article apparaît dans plusieurs actes de lissages).

b. Initialisation liste des demandes sélectionnées (liste WfPlaIniDem).

La requête REB a pour objectif d’initialiser la liste WfPlaDepDem qui contiendra les actions de lissages à effectuer ; dans le cadre du lissage des besoins externes de gestion (articles à la commande non lancés), les actions possibles sont les suivantes :

Actions possibles

PlaAction

PlaDepDatBes

FabUniPro*

FabGamCad*

PlaCyc*

PlaEtaRef

PlaEtaDur*

Modification de la date de fin de fabrication d’un article à la commande.

DM

Nouvelle date de la demande.

Changement de Gamme

GM

A initialiser suivant modification souhaitée.

Modification cycles mise à disposition, expédition, transport.

DC

A initialiser suivant modification souhaitée.

Modification du cycle d’une étape.

GC

A initialiser suivant modification souhaitée.

Modification de la date de fin de fabrication d’un OF.

DM

Nouvelle date de la demande.

Les zones vides sont non utilisées.

La liste WfPlaDepDem doit être initialisée de la manière suivante :

Quelle que soit l’action menée, les informations suivantes doivent être initialisées :

Information

Description

GenRefTypeArt 

Obligatoire. Type d’article (C = pour un article à la commande)

GenRefArt

Obligatoire. Référence article (à la commande)

PlaDepConfCde

Indique si la commande commerciale liée au besoin de gestion doit faire l’objet d’une gestion de confirmation de commande

CleTri1 à CleTri5 

Informations mémorisées dans l’historique des détails de planification pouvant servir de critère de recherche

Pour un même article, la liste WfPlaDepDem peut contenir plusieurs actions à exécuter, mais une même action pour un même article n’est exécutée qu’une seule fois ; par ailleurs, il ne peut y avoir simultanément dans un même acte une modification de gamme et une modification de cycle.

c. Exécution règle de lissage DIALOG (but en sortie : initialisation de la liste WfPlaDepDem).

  1. Pour chaque action de lissage définie dans la liste WfPlaDepDem, exécution de l’action (voir récapitulatif ci-dessous) : modification dates, modification cycles, modification gamme, modification cycle étape de gamme.

  2. Mémorisation des actions de simulation dans l’historique des actes de simulation (avec le détail pour chaque besoin subissant une action de lissage).

  3. Exécution de la planification par écart pour chaque ligne de besoin sélectionnée.

Le déroulement du traitement pour les actions d’annulation d’actes de lissage (depuis liste Historique Simulations) et (depuis liste Détail Historique Simulations) suit le principe suivant :

  1. Pour chaque acte de lissage concerné (dans l’ordre inverse des actes réalisés par rapport aux sélections effectuées) :

    1. Initialisation WfPlaDepDem à partir de l’historique du détail de simulation pour les détails concernés, en prenant pour chaque besoin, l’action sélectionnée et la situation mémorisée dans l’historique avant la réalisation de celle-ci.

    2. Mémorisation des actions de simulation dans l’historique des actes de simulation (avec le détail pour chaque besoin subissant une action de lissage).

    3. Exécution de la planification par écart pour chaque ligne de besoin sélectionnée.

1. Modification de la date de fin de fabrication d'un article à la commande

On souhaite par exemple effectuer un lissage en décalant la date de fin de fabrication du 26/01 au 30/01.

Voici un exemple de requête pour décaler la date de fin de fabrication:

  • POUR CHAQUE LST WfPlaIniDem” : on récupère chaque lignes de traçabilité sélectionnées quand on fait l’action lissage

  • VLO.CriDatDeb=WfPlaIniDem.PlaDatBes: on récupère la date de besoin de la demande initiale

  • On calcule la nouvelle date de fin comme on le souhaite ( ici on demande à l’utilisateur de combien il souhaite décaler la date de fin de fabrication, en entrant un nombre de jours et un sens de décalage).

Voila ce qu’on demandera à l’utilisateur

  • CREATION LST WfPlaDepDem: cette liste donne les ordres de lissage à réaliser

    • PlaAction: Obligatoire. Doit contenir « DM »

    • PlaDepDatBes: Obligatoire. Nouvelle date de fin de fabrication à considérer

    • PlaDepRais: Raison du lissage (mémorisé sur la ligne de besoin de gestion)

Voici les changements opérés par l’action de lissage !

AVANT LISSAGE

APRES LISSAGE

Sur le tableau de bord de charge: on voit qu’on a décalé de 2 jours !

Sur les charges des lignes de commande, on voit également que les charges sont décalées de 2 jours !

Sur les lignes de gestion, les dates de l’onglet Planification sont décalées de 2 jours !

Les dates de l’onglet Délai ne bougent pas: c’est normal elles sont calculées par le traitement IN et non Pl, et ce traitement n’est pas relancé quand on lisse.

Quand on effectue ce changement de date, un évènement PL se lance en interactif pour recalculer les dates.

2. Modification de la date de fin de fabrication d'un OF

Voici un exemple de requête pour décaler la date de fin de fabrication:

  • POUR CHAQUE LST WfPlaIniDem” : on récupère chaque lignes de traçabilité sélectionnées quand on fait l’action lissage

  • VLO.CriDatDeb=WfPlaIniDem.PlaDatBes: on récupère la date de besoin de la demande initiale

  • On calcule la nouvelle date de fin comme on le souhaite ( ici on demande à l’utilisateur de combien il souhaite décaler la date de fin de fabrication, en entrant un nombre de jours et un sens de décalage).

Voilà ce qu’on demandera à l’utilisateur

  • CREATION LST WfPlaDepDem: cette liste donne les ordres de lissage à réaliser

    • GenRefTypeArt: Doit contenir « OF »

    • GenRefArt : Numéro d’OF

    • PlaAction : Doit contenir « DM »

    • PlaDetDapBes : Nouvelle date de fin de fabrication de l’OF (pilotage date de fin, même si l’OF a été initialisé via la méthode de positionnement par date de début).

Un contrôle d’intégrité est assuré par DIAPASON : existence et validité de l’OF, recalage date sur premier jour non ouvré du calendrier général de fabrication, action de déplacement si la date calculée est différente de la date de fin de fabrication courante. 

Si avant le lancement de l’action de lissage, des OFs sont sélectionnés, ceux-ci sont visibles dans la requête REB dans la liste WfPlaIniDem de la manière suivante :

Information

Description

GenRefTypeArt 

Doit contenir « OF »

GenRefArt 

Numéro d’OF

PlaDatBes 

Date de fin de fabrication prévue avant action de lissage

PlaQteBes 

Quantité restant à fabriquer sur la dernière étape de fabrication

FabUniProRef 

Unité de production de la gamme de planification de l’OF

FabGamCadUti 

Cadre d’utilisation de la gamme de planification de l’OF

Si avant le lancement de l’action de lissage, des éléments de charge issus de la fonction DIALOG CCH-MAJ sont sélectionnés, ceux-ci sont alors visibles dans la requête REB de lissage de charge dans la liste WfPlaIniDem de la manière suivante :

Information

Description

GenRefTypeArt 

Doit contenir « E »

GenRefArt 

Liste chaînée suivante (séparateur : le caractère <espace>) : clé de la charge donnée à la fonction CCH-MAJ, ressource, unité de mesure de charge

PlaDatBes 

Date de fin de positionnement de la charge

Il est alors possible dans la requête REB de déplacer ces charges externes via la fonction CCH-MAJ : ces déplacements de charge ne seront pas tracés dans le détail de la simulation. Il faut également noter que la gestion de l'instruction LC-ERREUR est également intégrée dans l'exécution de la règle REB de lissage de charge : si un LC-ERREUR est initialisé durant l'exécution, toutes les mises à jour transactionnelles effectuées dans la requête sont annulées et le traitement de lissage n'est pas effectué.

Voici les changements opérés par l’action de lissage !

AVANT LISSAGE

APRES LISSAGE

Sur le tableau de bord de charge: on voit qu’on a décalé de 2 jours !

Sur l’OF, on voit également que les charges sont décalées de 2 jours !

Sur les lignes de gestion, les dates de l’onglet Planification sont décalées de 2 jours !

Les dates de l’onglet Délai ne bougent pas: c’est normal elles sont calculées par le traitement IN et non Pl, et ce traitement n’est pas relancé quand on lisse.

Quand on effectue ce changement de date, un évènement PL se lance en interactif pour recalculer les dates.

3. Changement de Gamme

On décide de changer de ressource depuis le tableau de bord de charge car on a une surcharge sur une gamme.

Or, par défaut, à l’intégration, on peut générer 2 gammes: une gamme principale et une gamme de secours:

La gamme principale est Active et Majeure (A et M).

Voici un exemple de requête pour changer de gamme de planification :

Quand on fait le lissage on demande a l’utilisateur de saisir le cadre d’utilisatiation et la gamme à utiliser: SCR.GamCadUti.

On crée la liste WFPlaDepDem avec:

  • PlaAction; Obligatoire. Doit contenir « GM »

  • FabUniProRef: Obligatoire. Nouvelle unité de fabrication à considérer pour la sélection de la gamme

  • FabGamCadUti: Obligatoire. Nouvelle cadre d’utilisation à considérer pour la sélection de la gamme

  • PlaDepRais: Raison du lissage (mémorisé sur la ligne de besoin de gestion)

Voici les changements opérés par l’action de lissage !

AVANT LISSAGE

APRES LISSAGE

Sur le tableau de bord de charge: on voit que la charge a changé de ressource !

On voir que la gamme principale et majeure a été modifiée !

Si la nouvelle gamme a une unité de production différente de la gamme initiale (ce qui n'était pas le cas dans l’exemple ci-dessus), on verra le changement sur la ligne de besoin de gestion au niveau du champ “FabUniProRef”. Illustration ci-contre dans le cas où on passe de U1 à U2. Ceci a donc un impact sur la prise en compte de la ligne de commande dans un CBN ou dans un autre mais il s’agit d'une autre histoire!

4. Modification cycles mise à disposition, expédition, transport

On décide d’augmenter le cycle de mise à disposition: pour conserver la date de livraison au client, il faut décaler la date de fin de fabrication !

Voici un exemple de requête pour faire varier les cycles:

On demande à l’utilisateur de rentrer la durée du cycle de mise à disposition.

On crée la liste WFPlaDepDem avec:

  • PlaAction: Obligatoire. Doit contenir « DC »

  • PlaCycMajTra: Logique indiquant si le cycle de transport doit être mis à jour ou non

  • PlaCycValTra: Obligatoire si PlaCycMajTra = Oui. Valeur du nouveau cycle de transport à considérer sur la ligne de besoin de gestion

  • PlaCycMajREx: Logique indiquant si le cycle de préparation d’expédition doit être mis à jour ou non

  • PlaCycValREx: Obligatoire si PlaCycMajREx = Oui. Valeur du nouveau cycle de préparation d’expédition à considérer sur la ligne de besoin de gestion

  • PlaCycMajDEs: Obligatoire. Logique indiquant si le cycle de mise à disposition doit être mis à jour ou non

  • PlaCycValDEs: Obligatoire si PlaCycMajDEs = Oui. Valeur du nouveau cycle de mise à disposition à considérer sur la ligne de besoin de gestion

Voici les changements opérés après l’action de lissage

AVANT LISSAGE

APRES LISSAGE

Sur le tableau de bord de charge: on voit qu’on a décalé de 2 jours !

Sur l’onglet Délai, seul le cycle de MAD a été modifié !

Sur l’onglet Planification, les dates de début et de fin ont été modifiées !

5. Modification du cycle d'une étape

On décide d’augmenter la durée d’attente de l'étape d’emballage en ajoutant une pause avant. Pour cela, on doit augmenter la durée d’attente pour l’ étape emballage de 1 jour !

Voici un exemple de requête pour modifier la durée d’une étape:

On demande à l’utilisateur d’entrer la nouvelle durée d’attente !

On crée la liste WFPlaDepDem avec:

  • PlaAction: Obligatoire. Doit contenir « GC »

  • PlaGamRef: Référence gamme. Si non renseignée, c’est la gamme active courante qui est sélectionnée

  • PlaEtaRef: Obligatoire. Référence étape concernée par la mise à jour des durées

  • PlaEtaMajAtt: Obligatoire. Logique indiquant si le cycle d’attente de l’étape doit être mis à jour ou non

  • PlaEtaDurAtt: Obligatoire si PlaEtaMajAtt = Oui. Valeur du cycle d’attente de l’étape à considérer sur la ligne de besoin de gestion

  • PlaEtaMajPre: Logique indiquant si le cycle ou la durée de préparation de l’étape doit être mis à jour ou non

  • PlaEtaDurPre: Obligatoire si PlaEtaMajPre = Oui. Valeur du cycle ou la durée de préparation de l’étape à considérer sur la ligne de besoin de gestion

  • PlaEtaMajRea: Logique indiquant si le cycle ou la durée de réalisation de l’étape doit être mis à jour ou non

  • PlaEtaDurRea: Obligatoire si PlaEtaMajRea = Oui. Valeur du cycle ou la durée de réalisation de l’étape à considérer sur la ligne de besoin de gestion

Voici les changements opérés après l’action de lissage

AVANT LISSAGE

APRES LISSAGE

Sur le tableau de bord de charge: on voit qu’on a décalé le début de fabrication de 1 jour ( +le week-end, qui n’est as travaillé) !

Sur la gamme, on voit que le temps d’attente de l'étape d’emballage est bien passé à 1 jour.

Sur l’onglet Planification des lignes de besoin de gestion, la durée totale du cycle a bien augmenté de 1 jour et la date de début du cycle été avancée de 1 jour ( + le Week-end).

Déplacement de charge externe

Dans ce cas on gère de la charge externe: par exemple, on souhaite voir dans le tableau de bord de charge les commandes qui n’ont pas encore été validées pour déjà pouvoir lisser la charge. On décide notamment de déplacer une charge externe positionnée le 26/01 au 27/01.

Voici la charge initiale:

Voici un exemple de requête pour déplacer une charge externe:

A noter:

  • Pour rechercher uniquement la charge externe, on utilise : SI WfPlaIniDem.GenRefTypArt=CLO.”E” (ligne 11). Le “E” permet de désigner la charge externe dans cette requête.

  • On utilise VLO.RetFct=CCH-INF (RESSOURCE=VLO.ResGenRef…) ( ligne 27) pour récupérer les informations relatives à la charge externe: sa valeur, sa désignation,, la date…)

  • Entre la ligne 37 et 14, on demande à l’utilisateur de combien il veut décaler la charge et s’il veut la décaler dans le passé ou dans le futur. On calcule ainsi la nouvelle date.

Les infos qu’on demande à l’utilisateur pour lisser

  • On utilise VLO.RefFct=CCH-MAJ(CCH-CLE=VLO.Cle…) ( ligne 42) pour décaler la charge en donnant la nouvelle date entrée par l’utilisateur.

On voit ainsi dans les traces:

Voici les changements opérés après l’action de lissage

AVANT LISSAGE

APRES LISSAGE

Sur le tableau de bord de charge: on voit qu’on a décalé la charge de début de fabrication de 1 jour jour.

Pour aller plus loin…

Comment voir tous les lissages qui ont été lancés ?

Depuis le tableau de bord de charge, clic droit “ Historique Session Simulation”

On voit la liste de tous les lissages qui ont été réalisés !

On peut soit:

  • Voir tous les lissages réalisés pour tout le monde avec “ Historique Simulations”

  • Voir les lissages réalisés uniquement pour cette session avec “Historique Session Simulation”

Comment annuler un lissage ?

Après avoir ouvert la liste de tous les lissages ( voir au dessus),

On peut annuler une action avec l’action annulation acte !

Puis avec l’action Détail Acte: on peut voir les différentes charges qu’on a lissées !

Comment voir toutes les charges de la gamme qui sont sur d'autres ressources depuis le tableur ?

Après avoir lancé l’action de traçabilité depuis le tableau de bord de charge, on clique sur “Simul. Charge Besoins Externes/Tableur”.

Cela permet de voir la charge de cette gamme placée sur d’autres ressources !


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.