Points d'entrée >  Module Stocks >  Script standard FUNCBN  

Afficher tout Masquer tout

LECORD : Lecture d'un enregistrement de 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 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 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é

 

Variables 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 paramètres calcul

Début de traitement d’un site

Contexte et mode de fonctionnement

Transaction

Il n’y 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 entête 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 détail 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 suggestion dans 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. 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 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 la phase 6 (Mise à jour du fichier des encours)

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 CQ pour les ordres de fabrication

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 saisonalié 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. 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 d’encours article supplé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: reset the site on [ORD] because of the transclass [CBD] = [ORD] in 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

Next

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 : Prise en compte délai de préparation

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 : # suggested work order

               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 : # suggested purchasing order/intersite order

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 mise à jour des encours

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) après la phase de calcul des suggestions pour les articles gérés sur stock. 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 saisonalié 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.

La variable GPE est utilisée. Elle est positionnée à la valeur 0 par défaut. 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 purge 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 est positionnée à la valeur 0 par défaut. Elle devra être positionnée à 1 dans le traitement spécifique lié au point d’entrée si on souhaite utiliser le mode mono-utilisateur avec un lock global sur les 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: Eclatement 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 n'y 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 dnas 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

#--------------------------------------------------------------------------------------
# Entry point CRE_SUG_SPLIT
# For customizing the splitting of suggestions
# [F:CBH] is online
# Variables:
# - WSUG = suggested qty
# - WDATS = suggested date
# - WNBR = nbr of splits according to reorder policy
# - WSTO = stock balance
#--------------------------------------------------------------------------------------
$ACTION
Case ACTION
When "CRE_SUG_SPLIT" : Gosub CRE_SUG_SPLIT
Endcase
Return
#--------------------------------------------------------------------------------------
$CRE_SUG_SPLIT
# parameters mask
If clalev ([M:ZCSP]) <= 0 : Local Mask ZCSP [ZCSP] : Endif
# test case >> only for purchased item "SPLIT" (GX3APP)
If [F:CBH]ITMREF <> "SPLIT" : Return : Endif
# only for PO suggestions
If [F:CBH]REOCOD <> 2 : Return : Endif
# fill ZCSP parameters mask
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
 
#--------------------------------------------------------------------------------------
# Purchase orders suggestions splitting
#--------------------------------------------------------------------------------------
# parameters mask ZCSP must be open and filled (mask ZCSP needs to be created)
#--------------------------------------------------------------------------------------
$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 case (GX3APP) split on 3 suppliers
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
# -------------------------------
# process 1st split - supplier 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
# -------------------------------
# process 2nd split - supplier 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
# -------------------------------
# process 3rd split - supplier 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)
# last split, adjust stock balance for MRP calculation
[M:ZCSP]STOBAL += (WREOTOT - [M:ZCSP]QTY)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
Return

CTLSTOSEC: cas particulier stock de sécurité au 1er 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. Cela signifie qu'il n'y a pas de besoin, ou que ce besoin est déjà couvert ou alloué sur le stock disponible.

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 phyique a été demandé.

L'ajustement consiste à ne pas tenir compte des bons de livraison/bons de préparation qui sont en attante 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 est positionnée à la valeur 0 par défaut. Elle pourra ê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, 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é