Points d'entrée > Module Ventes > Script standard SUBSDHB 

SDHGENLIG : Génération lignes de livraison en 130

Ce point d’entrée n’est plus actif en version 140.

 Il a été remplacé par le point d’entrée ‘SDHGENLIN’ toujours dans le même traitement.     

Attention, même si la finalité du nouveau point d’entrée reste la même en 140 qu’en 130, son contexte d’utilisation, ainsi que son fonctionnement sont complètement  différents ( il ne faut plus alimenter les tables livraison, mais les écrans).      

Ce point d’entrée intervient lors de la livraison d’une commande par le bouton « livraison » de la gestion des commandes.

Il permet de prendre la main juste avant le traitement de chaque ligne détail de livraison pour soustraire ce traitement et le remplacer ou pas par un  traitement spécifique.

Il est appelé lors de l’exécution du bouton ‘Livraison’ depuis la gestion des commandes.

Contexte et mode de fonctionnement

Transaction

Il y a une transaction en cours. C’est la transaction de création de la livraison.

Pour annuler la transaction s’il y a un problème, il faut positionner la variable GOK à 0.

Fichier trace

Il n’y a pas de fichier trace ouvert.

Contexte d’appel

On se trouve dans la transaction de création de la livraison. L’entête de livraison a été traitée. On se trouve au niveau du traitement des lignes détail.

Ce point d’entrée est appelé pour chaque ligne de livraison à créer, juste avant l’appel à l’étiquette DET_LIV qui effectue le traitement d’une ligne détail livraison.

Il permet de ne pas exécuter l’étiquette DET_LIV et d’exécuter ou pas une autre étiquette.

Variables et masques disponibles

L’enregistrement de l’entête de commande à livrer est chargé dans [F:SOH].

L’enregistrement de l’entête de livraison à créer est chargé dans [F:SDH] mais il n’est pas encore créé.

Les variables WSOHNUM, WSOPLIN, WSOQSEQ contiennent la clé de la ligne de commande à livrer.

L’étiquette DET_LIV à substituer s’occupe de :

.        Lire avec lock les enregistrements [F:SOQ] et [F:SOP] de la ligne de commande à livrer

.        Lire les enregistrements correspondant à l ‘article [F :SOQ]ITMREF ([F :ITM], [F :ITS] et [F :ITU])

.        Alimenter la classe [F :SDD] de l’enregistrement détail livraison à créer.

.        Créer l’enregistrement [F :SDD]

.        Mettre à jour la ligne de commande livrée ([F:SOQ], [F :SOP]) et les fichiers s’y rapportant (les allocations, l’en-cours)

Ce sont tous ces traitements qui ne seront pas exécutés si ce point d’entrée est activé.

Pour activer le point d’entrée, la variable WPOINT_DET_LIV a été créé.

Elle est initialisée à 1 avant l’appel du point d’entrée et testée juste après l’appel. L’étiquette DET_LIV n’est exécutée que si WPOINT_DET_LIV vaut 1.

Pour ne  pas exécuter l’étiquette DET_LIV, il faut donc positionner la variable WPOINT_DET_LIV à 0.

Si l’étiquette DET_LIV doit être remplacée, il faudra prendre modèle sur son contenu et l’intégrer au point d’entrée.

 Tables ouvertes

Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (le client courant est chargé…). Traditionnellement, c’est le cas pour le fichier qui contient l’en-tête et pas pour celui qui contient les lignes…

Table

Contenu Significatif

Intitulé Table

SDELIVERY

Oui

Livraisons entête

SDELIVERYD

Non

Livraisons détail

SORDER

Oui

Commandes entête

SORDERQ

Non

Commandes ligne quantité

SORDERP

Non

Commandes ligne prix

SORDERC

Non

Commandes ligne article

BPARTNER

Oui

Tiers

BPCUSTOMER

Oui

Clients

BPDLVCUST

Oui

Clients livrés

BPCUSMVT

Non

Mouvements clients

SALESREP

Non

Représentants

STOALL

Non

Allocations

ITMMASTER

Non

Articles

ITMSALES 

Non 

Article vente

ITMBPC

Non

Article-client

ITMFACILIT

Non

Article-site

ITMMVT

Non

Mouvements articles

TABCUR

Non

Table des devises

FACILIT

Non

Sites

SPRICLINK

Non

Recherche tarifs vente (liens)

PRICSTRUCT

Non

Structure tarifs

BPCARRIER

Non

Transporteurs

TABMODELIV

Non

Table des modes de livraison

 

SDHGENLIN : Génération lignes de livraison en 140

En version 140, ce point d’entrée remplace ‘SDHGENLIG’ qui était actif en 130.

Attention, même si la finalité de ce point d’entrée reste la même en 140 qu’en 130, son contexte d’utilisation, ainsi que son fonctionnement sont complètement  différents ( il ne faut plus alimenter les tables livraison, mais les écrans).      

Ce point d’entrée intervient lors de la livraison d’une commande par le bouton « livraison » de la gestion des commandes.

Il permet de prendre la main juste avant le traitement de chaque ligne détail de livraison pour soustraire ce traitement et le remplacer ou pas par un  traitement spécifique.

Il est appelé lors de l’exécution du bouton ‘Livraison’ depuis la gestion des commandes

Contexte et mode de fonctionnement

Transaction

Il n’y a pas de transaction en cours.

Fichier trace

Il n’y a pas de fichier trace ouvert.

Contexte d’appel

L’entête de livraison a été traitée. On se trouve au niveau du traitement des lignes détail.

Ce point d’entrée est appelé pour chaque ligne de livraison à créer, juste avant l’appel à l’étiquette DET_LIV qui effectue le traitement d’une ligne détail livraison.

Il permet de ne pas exécuter l’étiquette TRT_LIGCDE From SUBSDHC  et d’exécuter ou pas une autre étiquette.

Variables et masques disponibles

L’enregistrement de l’entête de commande à livrer est chargé dans [F:SOH].

Les deux enregistrements détails commandes sont dans [F :SOQ] et [F :SOP]

L’enregistrement de l’entête de livraison à créer est chargé dans les classes écran [M:SDH0], [M :SDH1 et [M :SDH2].

Ce sont tous ces traitements qui ne seront pas exécutés si ce point d’entrée est activé.

Pour activer le point d’entrée, la variable WPOINT_DET_LIV a été créé.

Elle est initialisée à 1 avant l’appel du point d’entrée et testée juste après l’appel. L’étiquette TRT_LIGCDE n’est exécutée que si WPOINT_DET_LIV vaut 1.

Pour ne  pas exécuter l’étiquette TRT_LIGCDE, il faut donc positionner la variable WPOINT_DET_LIV à 0.

L’étiquette TRT_LIGCDE à substituer alimente la ligne de livraison à créer dans la classe écran [M:SDH1]

Par conséquent si cette étiquette doit être remplacée, il faudra prendre modèle sur son contenu et l’intégrer au point d’entrée.

 Tables ouvertes

Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (le client courant est chargé…). Traditionnellement, c’est le cas pour le fichier qui contient l’en-tête et pas pour celui qui contient les lignes…

Table

Contenu Significatif

Intitulé Table

SDELIVERY

Non

Livraisons entête

SDELIVERYD

Non

Livraisons détail

SORDER

Oui

Commandes entête

SORDERQ

Oui

Commandes ligne quantité

SORDERP

Oui

Commandes ligne prix

SORDERC

Non

Commandes ligne article

BPARTNER

Oui

Tiers

BPCUSTOMER

Oui

Clients

BPDLVCUST

Oui

Clients livrés

BPCUSMVT

Non

Mouvements clients

SALESREP

Non

Représentants

STOALL

Non

Allocations

ITMMASTER

Non

Articles

ITMSALES 

Non 

Article vente

ITMBPC

Non

Article-client

ITMFACILIT

Non

Article-site

ITMMVT

Non

Mouvements articles

TABCUR

Non

Table des devises

FACILIT

Non

Sites

SPRICLINK

Non

Recherche tarifs vente (liens)

PRICSTRUCT

Non

Structure tarifs

BPCARRIER

Non

Transporteurs

TABMODELIV

Non

Table des modes de livraison

 

SDHFROMPRH : Site vente sur livraison créée par bouton depuis bons préparation

Lors de la création d'une livraison, par le bouton depuis les bons de préparation, le site qui permet de déterminer la société est le site d'expédition du bon de préparation.

Ce point d'entrée permet d'intervenir sur ce fonctionnement, et retenir un autre site, et donc potentiellement une autre société.

Ca n'est pas là le comportement standard.

Le spécifique devra donc aussi éventuellement prendre en charge les impacts liés à ceci.

Contexte et mode de fonctionnement

Transaction

Il n'y a pas de transaction en cours.


Fichier trace


Il n’y a pas de fichier trace ouvert.


Contexte d’appel


Ce point d’entrée est appelé lorsque l'on crée une livraison à partir d'un bon de préparation en utilisant le bouton.

Au début, la variable globale GFCY est initialisée à partir du site d'expédition du bon de préparation ([F:PRH]STOFCY).

GFCY est ensuite utilisé pour initialiser d'autres variables globales telles que GSOCIETE.


Variables et masques disponibles

La variable local entière ISDHFROMPRH est déclarée, et initialisée à 0 (zéro).

Si sa valeur reste à 0, le comportement standard est conservé, et GFCY est alimenté avec [F:PRH]STOFCY.

Pour toute autre valeur données à ISDHFROMPRH, on considèrera que la valeur de GFCY a été donnée dans le point d'entrée. Cette valeur sera donc conservée.

L’enregistrement de l’entête du bon de préparation est chargé dans [F:PRH].

Exemple de modification de la valeur de GFCY par le point d'entrée :

       GFCY = <Site à utiliser>

       ISDHFROMPRH = 1


  Tables ouvertes


Dans le tableau ci-dessous, le flag contenu significatif signifie que le contenu est en phase avec le contexte (le client courant est chargé…). Traditionnellement, c’est le cas pour le fichier qui contient l’en-tête et pas pour celui qui contient les lignes…

Table

Contenu Significatif

Intitulé Table

SDELIVERY

Non

Livraisons entête

SDELIVERYD

Non

Livraisons détail

SORDER

Non

Commandes entête

SORDERQ

Non

Commandes ligne quantité

SORDERP

Non

Commandes ligne prix

SORDERC

Non

Commandes ligne article

BPARTNER

Non

Tiers

BPCUSTOMER

Non

Clients

BPDLVCUST

Non

Clients livrés

BPCUSMVT

Non

Mouvements clients

SALESREP

Non

Représentants

STOALL

Non

Allocations

ITMMASTER

Non

Articles

ITMSALES

Non

Article vente

ITMBPC

Non

Article-client

ITMFACILIT

Non

Article-site

ITMMVT

Non

Mouvements articles

TABCUR

Non

Table des devises

FACILIT

Non

Sites

SPRICLINK

Non

Recherche tarifs vente (liens)

PRICSTRUCT

Non

Structure tarifs

BPCARRIER

Non

Transporteurs

TABMODELIV

Non

Table des modes de livraison

STOPREH

Oui

Bon de préparation entête

  STOPRED

Non

Bon de préparation détail






ALIADRBPI : Alimentation champs adresse facture en entête livraison

Ce point d’entrée intervient lors de la création/modification d'une livraison.

Il permet de prendre la main lors du stockage du détail de l'adresse de facturation afin de stocker des champs spécifiques qui auraient été renseignés dans l'écran de saisie des adresses.

Il est appelé lors de la création/modification d'une livraison depuis la gestion des livraisons.

Contexte et mode de fonctionnement

Transaction

Il y a toujours une transaction de mise à jour en cours.

Fichier trace

Il n’y a pas de fichier trace ouvert.

Contexte d’appel

Ce point d’entrée est appelé :

- Lors de la création ou modification de la livraison, après avoir utilisé le bouton créer ou enregistrer : Il est appelé depuis les actions de l'objet INICRE ou INIMOD.

- Lors de l'utilisation de l'option adresse facture, après validation de la saisie de l'écran par le bouton OK.

Il se situe avant le write ou rewrite de la livraison.

Variables et masques disponibles

Les écrans de saisie [M:SDH] sont chargés avec la livraison en cours.

Le buffer [F:SDH] est locké et chargé avec la livraison en cours.

L'écran ADB3 est chargé avec l'adresse de facturation et [F:SDH] vient d'être chargé avec le contenu de l'écran.



ALIADRBPD : Alimentation champs adresse livraison en entête livraison

Ce point d’entrée intervient lors de la création/modification d'une livraison.

Il permet de prendre la main lors du stockage du détail de l'adresse de livraison afin de stocker des champs spécifiques qui auraient été renseignés dans l'écran de saisie des adresses.

Il est appelé lors de la création/modification d'une livraison depuis la gestion des livraisons.

Contexte et mode de fonctionnement

Transaction

Il y a toujours une transaction de mise à jour en cours.

Fichier trace

Il n’y a pas de fichier trace ouvert.

Contexte d’appel

Ce point d’entrée est appelé :

- Lors de la création ou modification de la livraison, après avoir utilisé le bouton créer ou enregistrer : Il est appelé depuis les actions de l'objet INICRE ou INIMOD.

- Lors de l'utilisation de l'option adresse livraison, après validation de la saisie de l'écran par le bouton OK.

Il se situe avant le write ou rewrite de la livraison.

Variables et masques disponibles

Les écrans de saisie [M:SDH] sont chargés avec la livraison en cours.

Le buffer [F:SDH] est locké et chargé avec la livraison en cours.

L'écran ADB2 est chargé avec l'adresse de livraison et [F:SDH] vient d'être chargé avec le contenu de l'écran.