Traitement FUNCBN : FUNCBN
LECORD: Lecture d'un enregistrement ORDERS
Filtre des ordres en cours dans le calcul des besoins.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) à la lecture avec lock (verrouillage) de chaque enregistrement de la table ORDERS pour création du fichier de travail entête du calcul.
Classes et variables disponibles
Variable |
Définition |
Classe [F:CBH] |
Contient les données en cours de traitement (Site, article …) |
Classe [F:ORD] |
Contient l'enregistrement ORDERS |
Variable integer I |
Positionner I = 0 pour traiter l'ordre Positionner I = 1 pour ignorer l'ordre |
STRSTO: Calcul du stock de départ
Stock de départ calcul des besoins
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé avant écriture de chaque enregistrement de la table CBNHEA ([F:CBH])
Le champ stock de départ est déjà calculé et peut, selon le contexte, être modifié.
Variables
Variable ou masque |
Définition |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
CALCOUV : Calcul de couverture
Calcul non standard des couvertures pour tous les buckets
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé lors du calcul de la couverture pour les articles concernés seulement
Tables ouvertes
Toutes les tables du calcul des besoins.
[CBH] Entête fichier de travail chargé
[ITF] Article-site chargé
Variable disponibles
Variables en entrée
WNBBUC Nombre de buckets
WNBJOU Nombre de jours de traitements (Date fin - date début +1)
WBUCDEB(0..WNBBUC-1) Tableau des dates début de bucket
WBUCFIN(0..WNBBUC-1) Tableau des dates fin de bucket
WQTY(0..WNBJOU-1) Tableau des besoins jours par jours
I Indicateur = 0
Variables à retourner
WCOUV(0..WNBBUC-1) Tableau des couvertures par bucket
I = 0 Si le calcul standard doit être effectué
I <> 0 Si le tableau des couvertures a été chargé par le point d'entrée
AFTREAPCB: Lecture des paramètres de calcul
Début de traitement d’un site
Contexte et mode de fonctionnement
Transaction
Il ni a pas de transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) après la lecture des paramètres de calcul des besoins (Table PARMRP) avant le chargement des paramètres dans des variables de travail. Le contenu de l’enregistrement peut être modifié pour que d’autres valeurs de paramètres soient prises en compte.
Classes et variables disponibles
Variable |
Définition |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Classe [F:PCB] |
Contient les paramètres du site |
Tables ouvertes
Toutes les tables du calcul des besoins.
BEFWRICBH : Avant écriture de l'entête de la table de travail
Point d’entrée avant écriture de chaque enregistrement de la table de travail CBNHEA / PDPHEA
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) après chargement du buffer de la classe [CBH].
Les enregistrements de la table CBW 5table de travail pour les lots périmés) ont déjà été écrits.
Classes et variables disponibles
Variable classes |
Définition |
Classe [F:CBH] |
Contient les données prêtes à l’écriture |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
BEFWRICBD : Avant écriture du détail de la table de travail
Point d’entrée avant écriture de chaque enregistrement de la table de travail CBNDET / PDPDET
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) après chargement du buffer de la classe [CBD] à partir de la table en cours ORDERS .
Classes et variables disponibles
Variable classes |
Définition |
Classe [F:CBH] |
Contient les données entête de l’article traité |
Classe [F:CBD] |
Contient le buffer prêt à l’écriture |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
CRESUG: Création de suggestion dans la table de travail
Point d’entrée avant écriture de chaque suggestion dans la table de travail CBNDET / PDPDET
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) après chargement du buffer de la classe [CBD] pour chaque suggestion d’achat ou de fabrication.
Le buffer est chargé à l’exception des champs ‘date début’ ‘date fin’ et ‘date besoin’. La variable WDATS contient la date de référence pour la création de la suggestion (date du besoin) elle peut être modifiée pour agir sur les dates de la suggestion.
Classes et variables disponibles
Variable classes |
Définition |
Classe [F:CBH] |
Contient les données entête |
Classe [F :ITF] |
Contient les données de gestion article site |
Classe [F:CBD] |
Contient le buffer prêt à l’écriture (sauf les champs date) |
Variable date WDATS |
Contient la date de référence pour la création de la suggestion (date du besoin). Cette date peut être modifiée pour agir sur les dates de la suggestion. |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
ENDSTEP4 : Après la phase 4 (génération du fichier de détail CBN)
Point d’entrée à la fin de la phase 4
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé en fin de phase 4 (génération de la table CBNDET). Il permet, par exemple, d'avertir l'utilisateur de la fin de cette phase par envoi d' un message.
Classes et variables disponibles
Variable classes |
Définition |
Classe [F:CBH] |
Contient les données prêtes à l’écriture |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
ENDSTEP6 : Après phase 6 (mise à jour de l'en-cours)
Point d’entrée à la fin de la phase 6
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé en fin de phase 6 (mise à jour du fichier ORDERS). Il permet, par exemple, d'avertir l'utilisateur de la fin de cette phase par envoi d' un message.
Classes et variables disponibles
Variable classes |
Définition |
Classe [F:CBH] |
Contient les données prêtes à l’écriture |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
CUSMODLTI : Modification du délai de contrôle qualité pour les OF
Possibilité de modifier le délai de contrôle qualité pour les ordres de fabrication
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) au moment de l’écriture du fichier de travail détail ([F :CBD], juste après avoir récupéré le délai contrôle qualité pour les ordres de type WOF et WOP. Il permet de modifier la valeur de ce délai, via l’affectation de la variable de travail 'Q'.
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article…) |
Classe [F:ORD] | Contient l'enregistrement ORDERS |
Variable integer Q | Contient le délai CQ. Affecter si besoin une autre valeur à cette variable. |
Tables ouvertes
Toutes les tables du calcul des besoins.
MRPQTYSUG : Modification de la quantité à réapprovisionner
Possibilité de modifier la quantité à réapprovisionner
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) pendant la phase de calcul des suggestions pour les articles gérés sur stock. Il permet d’intervenir sur la quantité à réapprovisionner
Dans tous les cas, le traitement standard se charge d’appliquer la perte éventuelle et de générer la ou les suggestions correspondantes en respectant la politique de réapprovisionnement (quantité nette/économique, fractionnement …).
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article…) |
Variable decimal WBES | Contient la quantité à réapprovisionner calculée en standard. Affecter si besoin une autre valeur à cette variable. |
Tables ouvertes
Toutes les tables du calcul des besoins.
COR_STOSEC : Application de la saisonalité du stock de sécurité
Possibilité de remplacer le mode d’application standard de la saisonalité du stock de sécurité
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) pendant la phase de calcul des suggestions pour les articles gérés sur stock. Il permet d’intervenir sur l’application de la saisonalité au stock de sécurité.
Dans tous les cas, le traitement standard se charge d’appliquer la perte éventuelle et de générer la ou les suggestions correspondantes en respectant la politique de réapprovisionnement (quantité nette/économique, fractionnement …).
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article…) |
Classe [F :ITF] | Contient les données de l’article/site traité |
Variable date WDAT | Contient la date de début du bucket concerné |
Variable decimal WSAISON | Cette variable doit être alimentée avec le stock de sécurité calculé |
Variable globale GPE | A positionner à 1 pour inhiber l’application standard de la saisonalité. |
Tables ouvertes
Toutes les tables du calcul des besoins.
XTRA_ORD : Prise en compte de l'en-cours pour les articles complémentaires
Ce point d’entrée permet d’ajouter des encours article supplémentaire
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) à l’issue de la phase de chargement des encours article. Il permet d’intégrer des encours supplémentaires, par exemple issus d’un autre site.
Exemple d’algorithme d’ajout :
###########################################################################
$ACTION
Case ACTION
When 'XTRA_ORD' : Gosub XTRA_ORD
Endcase
Return
#---------------------------------------------------------------------
$XTRA_ORD
Filter [ORD] Where STOFCY = 'XXX' &
& ITMREF = [F:CBH]ITMREF &
& FMI < 2 &
& WIPSTA < 4
& Order By Key ORD1
For [ORD]
Readlock [ORD] Curr
If fstat = 0
I = 0
If [F:ORD]ENDDAT <= WCALDATF
If I = 0
# Important: réinitialisez le site sur [ORD] en raison de la transclasse [CBD] = [ORD] sur TRT_ORD
[F:ORD]STOFCY = [F:CBH]STOFCY
Gosub TRT_ORD From FUNCBN
If GOK <>1
Break
Endif
Endif
Endif
Else
GOK = -1
Break
Endif
Suivant
Filter [ORD]
Return
Classes et variables disponibles
Variable |
Définition |
Classe [F:CBH] |
Contient les données en cours de traitement (Site, article …) |
Classe [F :ITF] |
Contient les données de l’article/site traité |
SUGREQAVA: Délai de préparation pris en compte
Ce point d’entrée permet de prendre en compte le délai de préparation dans le cadre du calcul des dates des suggestions.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) au calcul des dates des suggestions.
Exemple d’algorithme de prise en compte du délai de préparation :
$ACTION
Case ACTION
When 'SUGREQAVA' : Gosub SUGREQAVA
Endcase
Return
$SUGREQAVA
Case [F:ITF]REOCOD
When 3,5 : # ordre de fabrication suggéré
WDATR = WDATF
If [F:ITF]PRPLTI = 0
WDATF = WDATR
Else
WCOR = 8
WCOD = 2
WDEL = [F:ITF]PRPLTI
Call CALDAT('-',WCOR,WDATR,WCOD,WDEL,WCAP,WCALDATD,WDATF) From CBNLIB
Endif
When Default # ordre d'achat/ordre inter-site suggéré
Endcase
Return
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article …) |
Classe [F :ITF] | Contient les données de l’article/site traité |
CHECK_CBNDET: Contrôle avant la mise à jour des en-cours
Ce point d’entrée permet d'intervenir après calcul des suggestions pour chaque article et avant la mise à jour de l'encours (ORDERS).
Il peut notamment servir à contrôler, modifier ou purger les tables de travail PDPDET et CBNDET avant la mise à jour.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) pendant la phase de calcul des suggestions pour les articles gérés sur stock. Il permet d’intervenir sur la quantité à réapprovisionner. Il permet d’intervenir avant la mise à jour de l'encours (Mise à jour de la table ORDERS à partir des tables PDPDET/CBNDET suivant le traitement)
Tables ouvertes
Toutes les tables du calcul des besoins.
REPLANNING : Avant replanification suggestion
Possibilité de remplacer le mode d’application standard de la saisonalité du stock de sécurité
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
La variable GREPLANNING permet d'identifier où ce point d'entrée est appelé :
- 'RPL_INIT' en début de traitement de la replanification pour un site donné
- 'RPL_TRTSUGITM' calcul suggestion d'un article
- 'RPL_CUMSTODIS' calcul du cumul stock disponible
- 'RPL_CALSUGSTO' calcul suggestion article sur stock
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article…) |
Classe [F :ITF] | Contient les données de l’article/site traité |
Tables ouvertes
Toutes les tables du calcul des besoins.
LOAD_BUCKET: Avant correction des buckets
Rendre spécifique la préparation des buckets, et/ou éviter les corrections standards.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) après le chargement des paramètres. Il permet d'éviter le calcul standard de correction des buckets, en activant le paramètre GPE>0.
Classes et variables disponibles
Variable |
Définition |
Classe [F:CBH] |
Contient les données en cours de traitement (Site, article …) |
Classe [F:ORD] |
Contient l'enregistrement ORDERS |
Variable integer I |
Positionner I = 0 pour traiter l'ordre Positionner I = 1 pour ignorer l'ordre |
ENDSTEP5 : Après la phase 5 (calcul des besoins)
Point d’entrée à la fin de la phase 5
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé en fin de phase 5 (calcul des suggestions). Il permet, par exemple, d'ajouter des WOS spécifiques dans CBNDET avant la génération des encours.
Classes et variables disponibles
Variable classes |
Définition |
Classe [F:CBH] |
Contient les données prêtes à l’écriture |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
NOHINT: Optimisation du lien ITM-ITF
Ce point d’entrée permet d'ajouter l'instruction 'With Nohint' dans le cas de problèmes de performances sur l'instruction 'Link' entre les tables [F:ITM] et [F:ITF].
Il est appelé dans le traitement FUNCBN.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets juste avant la boucle sur les articles dont le mode de réapprovisionnement est CBN/PDP.
Elle devra être positionnée à 1 dans le traitement spécifique lié au point d’entrée si on souhaite ajouter cette instruction 'With Nohint' dans la requête utilisée.
Classes et variables disponibles
Variable |
Définition |
Classe [F:CBH] |
Contient les données en cours de traitement (Site, article …) |
Classe [F:ORD] |
Contient l'enregistrement ORDERS |
Variable integer I |
Positionner I = 0 pour traiter l'ordre Positionner I = 1 pour ignorer l'ordre |
NOLOCK : Optimisation de la purge des résultats précédents
Ce point d’entrée permet d'éviter les 'Readlock ... Delete' qui sont trop longs sur une base de données volumineuse, et d'utiliser plutôt le mode mon-utilisateur avec un lock global des tables concernées PUR_TABLES_MONO.
Il est appelé dans le traitement FUNCBN.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets juste avant la purge des résultats précédents.
La variable GPE est utilisée. Elle a pour valeur 0 par défaut. Elle devra être positionnée sur 1 dans le traitement spécifique/personnalisé lié au point d’entrée si l'utilisateur souhaite utiliser le mode mono-utilisateur en appliquant un verrouillage global aux tables concernées.
Classes et variables disponibles
Variable |
Définition |
Classe [F:CBH] |
Contient les données en cours de traitement (Site, article …) |
Classe [F:ORD] |
Contient l'enregistrement ORDERS |
Variable integer I |
Positionner I = 0 pour traiter l'ordre Positionner I = 1 pour ignorer l'ordre |
CRE_SUG_SPLIT : Éclatement des suggestions
Ce point d’entrée permet de prendre la main sur la génération des suggestions afin de procéder à un éclatement, par exemple une répartition sur plusieurs fournisseurs.
Il est appelé dans le traitement FUNCBN.
Contexte et mode de fonctionnement
Transaction
Il y n'a pas de transaction en cours.
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets juste avant la génération d'une suggestion dans les tables de calcul.
Les variables suivantes sont disponibles :
WSUG quantité de la suggestion
WDATS Date de la suggestion
WNBR Nombre de fraction d'après la politique de réappro
WSTO Balance de stock pour le calcul en cours
Exemple de source
#--------------------------------------------------------------------------------------
# Point d'entrée CRE_SUG_SPLIT
# Pour personnaliser l'éclatement des suggestions
# [F:CBH] est en ligne
# Variables:
# - WSUG = qté suggérée
# - WDATS = date suggérée
# - WNBR = nbre d'éclatements selon la politique de réapprovisionnement
# - WSTO = solde du stock
#--------------------------------------------------------------------------------------
$ACTION
Case ACTION
When 'CRE_SUG_SPLIT' : Gosub CRE_SUG_SPLIT
Endcase
Return
#--------------------------------------------------------------------------------------
$CRE_SUG_SPLIT
# écran des paramètres
If clalev ([M:ZCSP]) <= 0 : Local Mask ZCSP [ZCSP] : Endif
# test du cas >> uniquement pour l'article acheté 'SPLIT' (GX3APP)
If [F:CBH]ITMREF <> 'SPLIT' : Return : Endif
# uniquement pour les suggestions CA
If [F:CBH]REOCOD <> 2 : Return : Endif
# renseigner écran des paramètres ZCSP
Raz [M:ZCSP]
[M:ZCSP]STOFCY = WFCY
[M:ZCSP]ITMREF = [F:CBH]ITMREF
[M:ZCSP]QTY = WSUG
[M:ZCSP]DAT = WDATS
[M:ZCSP]STOBAL = WSTO
[M:ZCSP]PROCESS = 'ZFUNCBN'
Gosub POS_SPLITTING
GPE = 1
Return
#--------------------------------------------------------------------------------------
$FEEDBACK
WSUG = [M:ZCSP]QTYOUT
WDATS = [M:ZCSP]DATOUT
WBPRO = [M:ZCSP]BPROUT
WSTO = [M:ZCSP]STOBAL
Gosub CRE_UNE_SUG From FUNCBN
Return
#--------------------------------------------------------------------------------------
# Éclatements des suggestions de commande d'achat (CA)
#--------------------------------------------------------------------------------------
# l'écran des paramètres ZCSP doit être ouvert et renseigné (l'écran ZCSP doit être créé)
#--------------------------------------------------------------------------------------
$POS_SPLITTING
Local Char TSUG_BPR(GLONBPR)(3)
Local Integer TSUG_BPRPCT(3)
Local Decimal TSUG_BPRMINQTY(3)
Local Decimal WWRK, WREO, WREOTOT, WDELTA
Raz TSUG_BPR, TSUG_BPRPCT, TSUG_BPRMINQTY
# test de cas (GX3APP) éclatement sur 3 fournisseurs
TSUG_BPR(0) = 'FOU001'
TSUG_BPRPCT(0) = 40
TSUG_BPRMINQTY(0) = 250
TSUG_BPR(1) = 'FOU002'
TSUG_BPRPCT(1) = 40
TSUG_BPRMINQTY(1) = 200
TSUG_BPR(2) = 'FOU003'
TSUG_BPRPCT(2) = 20
TSUG_BPRMINQTY(2) = 150
# -------------------------------
# traitement du 1er éclatement - fournisseur 1
WWRK = int(([M:ZCSP]QTY * TSUG_BPRPCT(0)) / 100)
If WWRK < TSUG_BPRMINQTY(0) : WREO = TSUG_BPRMINQTY(0) : Else : WREO = WWRK : Endif
WREOTOT += WREO
[M:ZCSP]QTYOUT = WREO
[M:ZCSP]DATOUT = [M:ZCSP]DAT + 1
[M:ZCSP]BPROUT = TSUG_BPR(0)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
If WREOTOT >= [M:ZCSP]QTY : Return : Endif
# -------------------------------
# traitement du 2e éclatement - fournisseur 2
WWRK = int(([M:ZCSP]QTY * TSUG_BPRPCT(1)) / 100)
If WWRK < TSUG_BPRMINQTY(1) : WREO = TSUG_BPRMINQTY(1) : Else : WREO = WWRK : Endif
WREOTOT += WREO
[M:ZCSP]QTYOUT = WREO
[M:ZCSP]DATOUT = [M:ZCSP]DAT + 1
[M:ZCSP]BPROUT = TSUG_BPR(1)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
If WREOTOT >= [M:ZCSP]QTY : Return : Endif
# -------------------------------
# traitement du 3e éclatement - fournisseur 3
WWRK = int(([M:ZCSP]QTY * TSUG_BPRPCT(2)) / 100)
If WWRK < TSUG_BPRMINQTY(2) : WREO = TSUG_BPRMINQTY(2) : Else : WREO = WWRK : Endif
WREOTOT += WREO
[M:ZCSP]QTYOUT = WREO
[M:ZCSP]DATOUT = [M:ZCSP]DAT + 1
[M:ZCSP]BPROUT = TSUG_BPR(2)
# dernier éclatement, régul. du solde du stock pour le calcul CBN
[M:ZCSP]STOBAL += (WREOTOT - [M:ZCSP]QTY)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
Return
CTLSTOSEC : cas particulier du stock de sécurité sur le premier besoin
Ce point d’entrée permet de prendre la main sur la raz de la variable Stock de sécurité.
Il est appelé dans le traitement FUNCBN, lorsque le paramètre "Respect du stock de sécurité" est paramétré à la valeur "au 1er besoin", uniquement sur le 1er bucket et si WBESBUC=0.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article…) |
Classe [F :ITF] | Contient les données de l’article/site traité |
Tables ouvertes
Toutes les tables du calcul des besoins.
NOADJUST: Ajustement du stock de départ
Stock de départ calcul des besoins
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé avant ajustement du stock de départ, si le stock physique a été demandé.
L'ajustement consiste à ne pas tenir compte des bons de livraison/bons de préparation qui sont en attente de validation.
L'activation de la variable GPE=1 permet d'éviter l'ajustement du stock de départ et de revenir au mode de fonctionnement V5, toutes les allocations étant déduites du stock disponible.
Variables
Variable ou masque |
Définition |
WPRO |
Contient 1 si PDP Contient 2 si CBN |
Tables ouvertes
Toutes les tables du calcul des besoins.
BEFWRICBD1 : Avant écriture résultat de CBN
Ce point d’entrée permet de contrôler et/ou rectifier certaines informations juste avant la génération du besoin dans la table CBNDET ou PDPDET.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) juste avant l'insertion du besoin dans le résultat de CBN/PDP (2 appels).
La variable GPE est utilisée. Elle a pour valeur 0 par défaut. Elle doit être positionnée à 1 dans le traitement spécifique lié au point d’entrée si on souhaite éviter l'écriture de la ligne courante.
Les variables accessibles/modifiables sont dans le buffer [F:CBD1].
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article…) |
Classe [F :ITF] | Contient les données de l’article/site traité |
CTLDATSUG: Contrôle date de suggestion
Ce point d’entrée permet de contrôler et/ou rectifier certaines informations juste avant la génération du besoin dans la table CBNDET ou PDPDET.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé dans le calcul des besoins nets (CBN et PDP) à la fin du calcul des dates de début et de fin de la suggestion ($CALDATSUG).
Les variables accessibles/modifiables sont WDATD = date de début de la suggestion et WDATF = date de fin de la suggestion..Les autres informations relatives à la suggestion courante sont dans le buffer [F:CBD1]
Classes et variables disponibles
Variable | Définition |
Classe [F:CBH] | Contient les données en cours de traitement (Site, article …) |
Classe [F :ITF] | Contient les données de l’article/site traité |
CTLSTO : Ressource de stock de contrôle qualité
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d'entrée est appelé pendant le CBN et depuis le PDP avant la création d'une ressource diverse de stock de contrôle qualité ($CTL_STO)
Le point d’entrée se situe juste avant l'instruction "Write [CBD]".
La variable GPE peut être modifiée : GPE = 0 crée la ressource, GPE <> 0 ne crée pas la ressource. Les valeurs des champs de la classe [F:CBD] (calcul détaillé des besoins nets) peuvent être modifiées avant la création de ressource, par exemple la quantité et la date de besoin.
Si vous paramétrez GOK < 1, la transaction s'arrête.
STARTSTOCKECC : Réorganiser le stock de départ versionné
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Différents cas d’appel
Ce point d’entrée est appelé depuis le CBN et le PDP, immédiatement après le calcul du stock de départ pour un article versionné. Ce point d'entrée peut être utilisé pour réorganiser le stock de départ calculé. Par exemple : pour affecter le stock de départ total de toutes les versions sur une version en particulier (la dernière version).
Le stock de départ de chaque version se situe au niveau de WECCSTODIS(n), et les versions mineure et majeure correspondantes au niveau de WECCVALMAJ(n) et WECCVALMIN(n). On considère que n = nombre maximum de versions (code activité ECCMX).
Si vous paramétrez GOK < 1, la transaction s'arrête.
REOMGT : Ignorer les articles non gérés
Description du contexte
Ce point d'entrée vous permet d'ignorer tous les articles (sites) dans le traitement CBN dont le Mode de réapprovisionnement = "Non géré". Pour ces articles, aucun enregistrement n'est créé dans la table Calcul besoins nets (CBNHEA) ce qui peut entraîner une amélioration des performances.
Remarque : pour les articles manufacturés, lorsque des articles "ignorés" sont considérés comme des composants de nomenclature, une lecture de la base de données supplémentaire est déclenchée, ce qui peut, à l'inverse, réduire les performances.
Transaction
Il y a une transaction en cours
Fichier trace
Il y a un fichier trace ouvert
Variable disponible
Integer WREOMGT Définie sur 0 (par défaut) pour inclure tous les articles du traitement CBN. Définie sur 1 pour ignorer tous les articles (sites) dans le traitement CBN dont le Mode de réapprovisionnement = "Non géré".