Skip to main content
Skip table of contents

Règles REB/INV de gestion des inventaires En-cours


A quoi servent-elles ?

Les règles REB/INV servent à :

  • Pour la gestion en-cours FAT:

    • Générer les listes de comptage

    • Effectuer la correspondance En-Cours FAT / Article valorisé.

Pour la Gestion En-Cours

Définition des correspondances

La définition des correspondances permet de faire le lien entre les entités comptées (environnement Inventaires) et les entités valorisées (environnement CRV).

Dans tous les cas une correspondance décrit un lien tel que :

1 CT inventoriée = (Coe.Mult / Coe.Div) * Article valorisé

avec :

  • CT inventoriée = Société + Inventaire + Ressource + Référence CT Inventoriée

  • Article valorisé = Type article + référence article

  • Coefficients de lien = coefficient multiple + coefficient diviseur

Il existe trois méthodes de génération de correspondance :

  • Au lancement en fabrication 

    • Dans la requête REN de génération des CTs il est possible de définir une correspondance pour valorisation des en-cours via le champs suivants :

      • WTEtaCT.InvCTRef : valeur défaut si non définie = WTEtaCT.LanSerCTRef

      • WTEtaCT.InvCTDes : valeur défaut si non définie = WTEtaCT.LanSerCTDes

      • WTEtaCT.GenRefTypeArtVal : valeur défaut si non définie = Type produit fini OF courant

      • WTEtaCT.GenRefArtVal : valeur défaut si non définie = Référence produit fini OF courant

      • WTEtaCT.InvCTVal : valeur défaut si non définie = WTEtaCT.LanSerCTVal

      • WTEtaCT.InvCTLie : valeur défaut si non définie = WTEtaCT.LanSerCTQteLie.

    • La résultante est stockée dans la nouvelle table DTD.LAFATVal.

  • Sur définition inventaire

    • Dans la requête REB/INV définie sur l’onglet « Détail En-Cours » par le biais de la liste standard WFInvCorEco. Cette requête est définie sur les inventaires gérés par liste de comptage ou pour lesquels le type de correspondance est ‘1’.

    • Cette requête est exécutée lors du traitement de lancement d’inventaire (STO-IP)

  • En saisie déclaration d’inventaire 

    • Une action « Ajout correspondance » est disponible en mode « Administrateur » uniquement et permet de générer de nouvelles correspondances. Dans ce cas les informations la décrivant sont saisies sur une fiche de façon interactive.

Listes de comptage

Le modèle de génération de liste de comptage d’en-cours FAT est identique à celui des listes de comptage de mode vrac.

Les listes DIALOG sont identiques. La notion de section correspond à celle de ressource, la notion d’article à celle d’en-cours de fabrication.

Avant d’exécuter la requête REB, le contexte est le suivant :

  • SCR.StoInvRef : référence inventaire est disponible.

  • SCR.StoInvEvt : Contient la valeur ‘IC’

  • SCR.StoInvEntMod : Mode de données inventoriées (contient ‘E’ pour En-Cours)

  • SCR.StoInvEntTyp : Type de gestion par rapport au mode.

  • La combinatoire entre StoInvEntMod et StoInvEntTyp permet de connaître le contexte de génération : E 1 = Liste de comptage.

La première liste porte le nom WfInvCptLis (Stock : Articles dans Listes Comptage) et correspond à la définition des en-cours rattachés à une liste de comptage.

Champ

Type

Description

InvLisBas 

Caractère

Référence Liste d'En-Cours à Inventorier : clé de regroupement des en-cours dans une liste. Information obligatoire

MdiArt 

Caractère

Mot Directeur, clé de tri en-cours / liste : cette information est utilisée pour trier les en-cours d’une liste de comptage pour la saisie ou éventuellement les documents. Information facultative.

RefArt 

Caractère

Référence en-cours Rattaché : référence CT ou article pour lequel un en-cours existe. Information obligatoire.

RefEmplaStock 

Caractère

Référence Emplacement Stockage : facultatif. Peut contenir la notion d’étape pour des besoins de parcours particuliers (notion non gérée dans le processus par la suite), Cela permet également de pouvoir disposer dans la même liste de plusieurs fois le même en-cours (à des étapes différentes) Information facultative.

La seconde liste porte le nom WfInvCptLDe (Stock : Listes de Comptage pour Inventaire) et correspond à la liste des listes de comptage qui vont être utilisées lors de l’inventaire.

Champ

Type

Description

InvLisBas 

Caractère

Référence Liste En-Cours (dans WfInvCptLis) : c’est la clé d’identification des En-Cours qui devront être inventoriés. Elle permet de faire le lien avec la liste WfInvCptLis et d’utiliser la même liste d’en-cours sur plusieurs listes de comptage. Information obligatoire.

InvLisDes 

Caractère

Désignation Liste Unique pour Inventaire. Cette désignation est utilisée dans les présentations à l’écran des sélections des listes de comptage. Information facultative.

InvLisMDi 

Caractère

Mot Directeur Liste Unique pour Inventaire : cette information est utilisée pour trier les listes de comptage lors de leurs présentations à l’écran. Information facultative.

InvLisRef 

Caractère

Référence Liste Unique pour Inventaire : référence liste inventaire. Non utilisé par DIAPASON, mais peut être utile dans la requête de génération des listes de comptage. Information facultative.

RefSection 

Caractère

Ressource FAT sur laquelle s'applique la liste. Information obligatoire.

RefEmplaStock 

Caractère

Référence Emplacement Stockage : facultatif . Information non gérée par DIAPASON par la suite , peut contenir toute information pouvant faire objet d’un traitement particulier pour la génération de la liste de comptage.

Exemple de règle de génération de liste de comptage (REB/INV)

Les nouvelles variables SCR (STOInvEntMod et STOInvTypMod) sont utiles dans le cas où la requête permet de gérer des listes de comptage pour chacun des modes de gestion (Vrac, Palette et En-cours).

SI SCR.StoInvEntMod = CLO."V"

POUR CHAQUE/SOC STO STSecEmp AVEC STO STSecEmp.RefSection COMMENCE_PAR SCR.CriCarDeb :

SI SCR.StoInvTypMod = CLO."1"

VLO.Trouve = CGL.NON

RECH PREM LST WfInvCptLDe AVEC WfInvCptLDe.RefSection = STO STSecEmp.RefSection :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

CREATION Liste WfInvCptLDe :

PRENDRE WfInvCptLDe InvLisBas = STO STSecEmp.RefSection

PRENDRE WfInvCptLDe RefSection = STO STSecEmp.RefSection

FIN_BLOC

FIN_BLOC

VLO.Trouve = CGL.NON

RECH PREM LST WfInvCptLis AVEC WfInvCptLis.InvLisBas = STO STSecEmp.RefSection ET WfInvCptLis.RefArt = STO STSecEmp.RefArt ET WfInvCptLis.RefEmplaStock = STO STSecEmp.RefEmplaStock :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

CREATION Liste WfInvCptLis :

PRENDRE WfInvCptLis InvLisBas = STO STSecEmp.RefSection

PRENDRE WfInvCptLis RefArt = STO STSecEmp.RefArt

PRENDRE WfInvCptLis RefEmplaStock = STO STSecEmp.RefEmplaStock

PRENDRE WfInvCptLis RefUnMeDec = CLO."DIX"

FIN_BLOC

FIN_BLOC

FIN_BLOC

SINON

RECH PREM LST WfInvLisArt AVEC WfInvLisArt.RefArt = STO STSecEmp.RefArt :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

CREATION Liste WfInvLisArt :

PRENDRE WfInvLisArt RefArt = STO STSecEmp.RefArt

PRENDRE WfInvLisArt MDiArt = STO STSecEmp.MDiArt

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

SINON

SI SCR.StoInvEntMod = CLO."P"

POUR CHAQUE/SOC STO STPalDef AVEC STO STPalDef.RefSection = CLO."PF-OXXO" :

VLO.Trouve = CGL.NON

RECH PREM LST WfInvCptLDe AVEC WfInvCptLDe.RefSection = STO STPalDef.RefSection ET WfInvCptLDe.InvLisBas = STO STPalDef.RefTypePalette :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

CREATION Liste WfInvCptLDe :

PRENDRE WfInvCptLDe RefSection = STO STPalDef.RefSection

PRENDRE WfInvCptLDe InvLisBas = STO STPalDef.RefTypePalette

FIN_BLOC

FIN_BLOC

VLO.Trouve = CGL.NON

RECH PREM LST WfInvLisArt AVEC WfInvLisArt.Palette = STO STPalDef.RefPalette :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

POUR CHAQUE/SOC STO STPDiDet AVEC STO STPDiDet.RefPalette = STO STPalDef.RefPalette :

CREATION Liste WfInvLisArt :

PRENDRE WfInvLisArt Palette = STO STPalDef.RefPalette

PRENDRE WfInvLisArt InvLisBas = STO STPalDef.RefTypePalette

PRENDRE WfInvLisArt RefArt = STO STPDiDet.RefArt

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

SINON

SI SCR.StoInvEntMod = CLO."E"

POUR CHAQUE/SOC DTD DDReDef AVEC DTD DDReDef.GamGenObj = CLO."1" ET DTD DDReDef.ResGenRef COMMENCE_PAR SCR.CriCarDeb OU DTD DDReDef.ResGenRef COMMENCE_PAR CLO."D-" :

VLO.Trouve = CGL.NON

RECH PREM LST WfInvCptLDe AVEC WfInvCptLDe.RefSection = DTD DDReDef.ResGenRef :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

CREATION Liste WfInvCptLDe :

PRENDRE WfInvCptLDe InvLisBas = DTD DDReDef.ResGenRef

PRENDRE WfInvCptLDe RefSection = DTD DDReDef.ResGenRef

FIN_BLOC

FIN_BLOC

VLO.Trouve = CGL.NON

POUR CHAQUE/SOC DTD LAFAtECo AVEC DTD LAFAtECo.GamGenObj = DTD DDReDef.GamGenObj ET DTD LAFAtECo.ResGenRef = DTD DDReDef.ResGenRef :

SI DTD LAFAtECo.LanSerCTRef CONTIENT CLO."*F_*" OU DTD LAFAtECo.LanSerCTRef CONTIENT CLO."*D-*"

RECH PREM LST WfInvCptLis AVEC WfInvCptLis.InvLisBas = DTD LAFAtECo.ResGenRef ET WfInvCptLis.RefArt = DTD LAFAtECo.LanSerCTRef ET WfInvCptLis.RefEmplaStock = DTD LAFAtECo.GamEtaRef :

VLO.Trouve = CGL.OUI

FIN_BLOC

SI VLO.Trouve FAUX

CREATION Liste WfInvCptLis :

PRENDRE WfInvCptLis InvLisBas = DTD LAFAtECo.ResGenRef

PRENDRE WfInvCptLis RefArt = DTD LAFAtECo.LanSerCTRef

PRENDRE WfInvCptLis RefEmplaStock = DTD LAFAtECo.GamEtaRef

PRENDRE WfInvCptLis RefUnMeDec = CGL.VIDE

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

Exemple de règle de correspondance (REB/INV)

RECH PREM LST WfInvLisArt :

FIN_BLOC

TRACE= SCR.StoInvRef + " " + SCR.StoInvEntMod + " " + SCR.StoInvEvt + " " + SCR.StoInvLis + " " + SCR.StoInvTypMod

POUR CHAQUE/SOC STO STInEnEm AVEC STO STInEnEm.InvRef = SCR.StoInvRef :

POUR CHAQUE/SOC DTD LAFAtECo AVEC DTD LAFAtECo.ResGenRef = STO STInEnEm.InvEntRef :

VLO.V_TrouveArt = CGL.NON

VLO.V_RefArt = DTD LAFAtECo.LanSerCTRef

RECH TBD/SOC DTD DDArtic AVEC DTD DDArtic.GenRefTypeArt = CLO."R" ET DTD DDArtic.GenRefArt = VLO.V_RefArt :

VLO.V_TrouveArt = CGL.OUI

VLO.V_TypeArt = DTD DDArtic.GenRefTypeArt

VLO.V_RefArt = DTD DDArtic.GenRefArt

FIN_BLOC

SI VLO.V_TrouveArt FAUX

RECH TBD/SOC DTD DDArtic AVEC DTD DDArtic.GenRefTypeArt = CLO."C" ET DTD DDArtic.GenRefArt = VLO.V_RefArt :

VLO.V_TrouveArt = CGL.OUI

VLO.V_TypeArt = DTD DDArtic.GenRefTypeArt

VLO.V_RefArt = DTD DDArtic.GenRefArt

FIN_BLOC

FIN_BLOC

SI VLO.V_TrouveArt FAUX

RECH TBD/SOC DTD LASerFab AVEC DTD LASerFab.LanModTyp = CLO."L" ET DTD LASerFab.LanSerFabOF = DTD LAFAtECo.LanSerFabOF :

VLO.V_TrouveArt = CGL.OUI

VLO.V_TypeArt = DTD LASerFab.GenRefTypeArt

VLO.V_RefArt = DTD LASerFab.GenRefArt

FIN_BLOC

FIN_BLOC

SI VLO.V_TrouveArt FAUX

RECH TBD/SOC DTD LASerFab AVEC DTD LASerFab.LanModTyp = CLO."S" ET DTD LASerFab.LanSerFabOF = DTD LAFAtECo.LanSerFabOF :

VLO.V_TrouveArt = CGL.OUI

VLO.V_TypeArt = DTD LASerFab.GenRefTypeArt

VLO.V_RefArt = DTD LASerFab.GenRefArt

FIN_BLOC

FIN_BLOC

SI VLO.V_TrouveArt VRAI

VLO.V_TrouveArt = CGL.NON

RECH PREM LST WfInvCorEco AVEC WfInvCorEco.InvRef = SCR.StoInvRef ET WfInvCorEco.ResGenRef = DTD LAFAtECo.ResGenRef ET WfInvCorEco.InvCTRef = CLO."MACT-" + DTD LAFAtECo.LanSerCTRef :

VLO.V_TrouveArt = CGL.OUI

FIN_BLOC

SI VLO.V_TrouveArt FAUX

RECH TBD/SOC DTD LAFatCT AVEC DTD LAFatCT.LanSerFabOF = DTD LAFAtECo.LanSerFabOF ET DTD LAFatCT.GamEtaRef = DTD LAFAtECo.GamEtaRef ET DTD LAFatCT.LanSerCTRef = DTD LAFAtECo.LanSerCTRef :

CREATION Liste WfInvCorEco :

PRENDRE WfInvCorEco InvRef = SCR.StoInvRef

PRENDRE WfInvCorEco InvCTRef = CLO."MACT-" + DTD LAFAtECo.LanSerCTRef

PRENDRE WfInvCorEco InvCTDes = WfInvCorEco.InvCTRef + " " + CLO."<=>" + " " + VLO.V_TypeArt + CLO."/" + VLO.V_RefArt

PRENDRE WfInvCorEco ResGenRef = DTD LAFAtECo.ResGenRef

PRENDRE WfInvCorEco GenRefTypeArt = VLO.V_TypeArt

PRENDRE WfInvCorEco InvCTVal = DTD LAFatCT.LanSerCTVal

PRENDRE WfInvCorEco InvCTLie = DTD LAFatCT.LanSerCTQteLie

PRENDRE WfInvCorEco GenRefArt = VLO.V_RefArt

SI DTD LAFAtECo.LanSerEcoSta = CLO."E"

PRENDRE WfInvCorEco QtePhotoEC = DTD LAFAtECo.LanSerCtQte

FIN_BLOC

SI DTD LAFAtECo.LanSerEcoSta = CLO."S"

PRENDRE WfInvCorEco QtePhotoSO = DTD LAFAtECo.LanSerCtQte

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC

FIN_BLOC


JavaScript errors detected

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

If this problem persists, please contact our support.