Traitement PURMTOLIB : Affectations
CALWALLQTY : Modification de la qté à allouer
Ce point d’entrée permet de modifier la quantité à allouer sur une matières d'EO ou d'OF affectée à la commande d'achat.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours.
Fichier trace
Il n’y a pas de fichier trace ouvert.
Classes fichiers et écrans disponibles
Les tables PORDER ([F :POH], PORDERQ ([F :POQ]) sont chargées au moment de l’appel du point d’entrée, ainsi qu'un composant de l'ordre à l'origine de cette commande (OF, EO ou commande de vente):
- table MFGMAT [F:MFM] dans le cas d'un OF
- table SCOMAT [F:SCM] dans le cas d'un EO
- tables SORDER ([F :SOH], SORDERQ ([F :SOQ]) dans le cas d'une commande de vente.
Utilisation
Les variables de travail WALLQTY et WREQQTY sont chargées respectivement avec la quantité restant à allouer pour la ligne de commande et la quantité réceptionnée.
En standard, on alloue la quantité réceptionnée (WREQQTY) à concurrence de la quantité restant à allouer (WALLQTY), c’est à dire que si la quantité réceptionnée est supérieure à la quantité commandée, on allouera que pour la quantité restant à allouer pour cette ligne de commande.
La quantité à allouer (WALLQTY) est calculée comme suit :
Pour une commande à facturation directe :
Quantité à allouer = quantité commandée - quantité allouée – quantité livrée – quantité facturée.
Pour les autres commandes :
Quantité à allouer = quantité commandée - quantité allouée – quantité livrée – quantité facturée – quantité en cours de livraison.
Si l’on veut, par exemple, allouer la quantité produite totale il suffit d’ initialiser la quantité à allouer (WALLQTY) avec la quantité receptionnée (WREQQTY).
Exemple de traitement standard :
$ACTION
Case ACTION
When "CALWALLQTY" : Gosub CALWALLQTY
Endcase
Return
$CALWALLQTY
If WREQQTY-ENT_CUMALLQTY > WALLQTY
WALLQTY = WREQQTY - ENT_CUMALLQTY
[M:MLIK]LIKQTY = WALLQTY
Endif
Return
Tables ouvertes
Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (…).
Table | Contenu significatif | Intitulé Table |
MFGHEAD | Non | Entête OF |
MFGITM | Oui | Article lancé |
SCOHEAD | Non | Entête EO |
SCOITM | Oui | Article lancé |
SORDER | Oui | Commande de vente |
SORDERQ | Oui | Commande de vente-ligne |
PORDER | Oui | Commande d'achat |
PORDERQ | Oui | Commande d'achat-ligne |
CUSTRTALL : Gestion spécifique de l'allocation des ordres associés à la commande
En création et annulation de commandes sur des ordres de fabrication/sous-traitance, ce point d’entrée permet de prendre la main lors de la gestion de l ‘allocation sur la commande, afin, par exemple, de gérer des allocations globales au lieu des allocations détaillées.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours.
Fichier trace
Classes fichiers et écrans disponibles
Les tables PORDER ([F :POH], PORDERQ ([F :POQ]) sont chargées au moment de l’appel du point d’entrée, ainsi qu'un composant de l'ordre à l'origine de cette commande (OF, EO ou commande de vente):
- table MFGMAT [F:MFM] dans le cas d'un OF
- table SCOMAT [F:SCM] dans le cas d'un EO
- tables SORDER ([F :SOH], SORDERQ ([F :SOQ]) dans le cas d'une commande de vente.
Utilisation
Tester la valeur de la variable [M:MILK]MAJCOD (valeur possible « E » pour entrée en stock et « S » pour suppression) afin de connaître le contexte d’appel.
En réception de commande d'achat ([M:MLIK]MAJCOD="E"), les variables de travail WALLQTY et WREQQTY sont chargées respectivement avec la quantité restant à allouer pour la ligne de commande et la quantité réceptionnée.
En annulation de réception de commande d'achat ([M:MLIK]MAJCOD="S"), il faut renseigner la variable SAV_ WALLQTY avec la quantité désallouée * -1 (quantité désallouée en négatif).
En création SAV_WALLQTY est gérée par le standard.
En sortie du point d’entrée, positionner la variable globale GPE à la valeur 1 pour inhiber le traitement standard de création ou annulation d’allocations détaillées.
Tables ouvertes
Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (…).
Table Contenu significatif Intitulé Table MFGHEAD Non Entête OF MFGITM Oui Article lancé SCOHEAD Non Entête EO SCOITM Oui Article lancé SORDER Oui Commande de vente SORDERQ Oui Commande de vente-ligne PORDER Oui Commande d'achat PORDERQ Oui Commande d'achat-ligne
CHGALLQTY : Modification de la qté à allouer
Ce point d’entrée permet de modifier la quantité à allouer sur commande de vente affectée à la commande d'achat.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours.
Fichier trace
Il n’y a pas de fichier trace ouvert.
Classes fichiers et écrans disponibles
Les tables SORDER ([F :SOH], SORDERQ ([F :SOQ], PORDER ([F :POH], PORDERQ ([F :POQ]) sont chargées au moment de l’appel du point d’entrée.
Utilisation
Les variables de travail WQTERES et WREQQTY sont chargées respectivement avec la quantité restant à allouer pour la ligne de commande et la quantité réceptionnée.
En standard, on alloue la quantité réceptionnée (WREQQTY) à concurrence de la quantité restant à allouer (WQTERES), c’est à dire que si la quantité réceptionnée est supérieure à la quantité commandée, on allouera que pour la quantité restant à allouer pour cette ligne de commande.
La quantité à allouer (WQTERES) est calculée comme suit :
Pour une commande à facturation directe :
Quantité à allouer = quantité commandée - quantité allouée – quantité livrée – quantité facturée.
Pour les autres commandes :
Quantité à allouer = quantité commandée - quantité allouée – quantité livrée – quantité facturée – quantité en cours de livraison.
Si l’on veut, par exemple, allouer la quantité produite totale il suffit d’ initialiser la quantité à allouer (WQTERES) avec la quantité réceptionnée (WREQQTY).
Exemple de traitement standard :
$ACTION
Case ACTION
When "CALWALLQTY" : Gosub CALWALLQTY
Endcase
Return
$CALWALLQTY
If WREQQTY-ENT_CUMALLQTY > WQTERES
WQTERES = WREQQTY - ENT_CUMALLQTY
[M:MLIK]LIKQTY = WQTERES
Endif
Return
Tables ouvertes
Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (…).
Table | Contenu significatif | Intitulé Table |
SORDER | Oui | Commande de vente |
SORDERQ | Oui | Commande de vente-ligne |
PORDER | Oui | Commande d'achat |
PORDERQ | Oui | Commande d'achat-ligne |
MAJSOFALL : Allocation d'une commande de vente
Ce point d’entrée est situé dans la partie de traitement qui gère l'allocation du stock sur une demande (commande de vente, besoin matière pour production interne ou externe) lors d'une entrée en stock via réception d'une commande d'achat, lorsqu'il y a une affectation entre la demande et à la ressource. Ce point d'entrée est volontairement restreint au cas où la demande affectée est une commande de vente.
Contexte et mode de fonctionnement
Transaction
Il y a une transaction en cours.
Fichier trace
Il n’y a pas de fichier trace ouvert.
Utilisation
Au moment de l'appel, ni les en-cours de l'affectation, ni l'affectation elle-même, n'ont été mis à jour respectivement dans les tables ORDERS ([F:ORDB]) et MTOLINK.
Au moment de l'appel, la classe masque [M:MLIK] est renseignée :
- STOFCY, ITMREF identifient l'article-site concerné
- DEMTYP, DEMNUM, DEMLIN, DEMSEQ, DWIPTYP, DWIPSTA correspondent à l'en-cours de commande de vente
- RESSTYP, RESSNUM, RESSLIN, RESSSEQ, RWIPTYP, RWIPSTA correspondent à l'en-cours de commande d'achat
- FMIFLG et FRCFLG valent toujours 1
- MAJCOD doit valoir "E"
L'appel se fait après la mise à jour du détail de la commande de vente [SOQ] et avant la mise à jour de l'entête de la commande de vente [SOH].
WQTE2 est la quantité qui a été ajoutée à la quantité allouée en unité de stock de la ligne de commande de vente ([F:SOQ]ALLQTYSTU+=WQTE2).
Tables ouvertes
Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (…).
Table | Contenu significatif | Intitulé Table |
SORDER | Oui | Commande de vente |
SORDERQ | Oui | Commande de vente-ligne |
SORDERP | Oui | Commande de vente-prix |
PRECEIPTD | Oui | Réception-ligne |
PORDERQ | Oui | Commande d'achat-ligne |
Remarques diverses
Ce point d'entrée est appelé à la réception d'une commande d'achat affectée à une commande de vente, que cette affectation soit ou non de contremarque.
En cas de contremarque, on a [F:SOQ]FMI=3 & [F:SOQ]FMINUM=[F:POQ]POHNUM.