| API / API Web | |
|
Version : 5.0-00 Edition spéciale ES1 |
||
|
Package : fr.generix.metier.bc4j.table.common GestionPropagationpropagerZones |
||
| Schémas d’entrée et de sortie : | IN | OUT |
Cette API permet d’intégrer, dans les zones paramétrées d’un enregistrement, les zones paramétrées ou champs d’autres enregistrements d’après les correspondances établies dans la table ZON.
API imbriquées : aucune.
Contraintes et limites de fonctionnement (hors périmètre)
| RAS. |
Paramétrage (PPE)
| PROPAG - PZNxxx - PZNCLI - PZNDEP - PZNEAE - PZNEAP - PZNEVE - PZNEVP - PZNFOU - PZNPRO - PZNREF - PZNREP - |
Processus, contrôles et règles de gestion
| Etape | Description du Processus | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Si le code société n’est pas renseigné, la valeur prise par défaut est le code société de la session métier. Si le champ « donneesOrigine » n’est pas renseigné, l’API n’intègrera que des valeurs par défaut constantes. En fonction du type de l’objet d’entrée, l’API charge le segment correspondant (voir tableau). Si segment == ‘CLI’ ou ‘DEP’ ou ‘EAE’ ou ‘EAP’ ou ‘EVE’ ou ‘EVP’ ou ‘FOU’ ou ‘PRO’ ou ‘REF’ ou ‘REP’ ou ‘TIE’, l’API recherche si un paramètre de type PZNxxx est positionné et réinitialise la valeur du segment avec la valeur du paramètre. L’API recherche tous les segments origine correspondant au segment en effectuant une lecture sur la tbl ZON avec la clé (Cletbl like ‘segment%’). Pour chaque enregistrement, l’API calcule la valeur correspondant au champ Lib3, auquel on a enlevé le premier caractère (origine). Cette valeur peut être :
et que [0,1,2] représente un segment valide (segmentOrigine), et que [3,4,5] représente un entier inférieur ou égal à 100, et que donneesOrigine contient les données correspondant à segmentOrigine, et que l’enregistrement trouvé grâce à ces données possède la zone paramétrée de l’indice, alors la valeur correspond à une zone paramétrée classique,
et que [0,1,2] représente un segment valide (segmentOrigine), et que [3,4,5] représente un entier supérieur ou égal à 101, et que donneesOrigine contient les données correspondant à segmentOrigine, et que l’enregistrement trouvé grâce à ces données possède un enregistrement dans ZOD avec Datmod != null, alors la valeur correspond à une zone paramétrée datée,
et valeur [0,1,2,3,4] == ‘#ZOD_’, et valeur [5,6,7] représente un segment valide (segmentOrigine), et valeur [8,9,10] représente un entier supérieur ou égal à 101, et que donneesOrigine contient les données correspondant à segmentOrigine, et que l’enregistrement trouvé grâce à ces données possède un enregistrement dans ZOD avec Datmod == null, alors la valeur correspond à un critère de segmentation,
et valeur [0] == ‘#’, et valeur [4] == ‘_‘, et valeur [1,2,3] représente un segment valide (segmentOrigine), et que donneesOrigine contient les données correspondant à segmentOrigine, et que l’enregistrement trouvé grâce à ces données possède le champ valeur [5,i,valeur.length], alors la valeur correspond à un champ mot clef,
Dans les trois premiers cas, un segment est valide si il figure dans le tableau ci dessous ou s’il est égal à la valeur de PZNCLI ou PZNDEP ou PZNEAE ou PZNEAP ou PZNEVE ou PZNEVP ou PZNFOU ouPZNPRO ou PZNREF ou PZNREP. Dans le quatrième cas, un segment est valide s’il est égal à une des tables suivantes : CNT, CNP, EVE, EVP, PRO, ADR. L’API met à jour dans l’enregistrement correspondant à l’objet d’entrée, les zones paramétrées. Si la zone paramétrée n’est pas nulle, sa valeur n’est pas actualisée. Si la zone paramétrée datée existe déjà, et que sa valeur n’est pas nulle, sa valeur n’est pas actualisée. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
numZonePropage et numZoneExclu |
Grâce à la balise <choice>, il vous faut soit renseigner numZonePropage, soit numZoneExclu en entrée de l’API (ou aucun des 2 éventuellement, ces balises étant facultatives). Le traitement principal reste globalement identique mais, si on a renseigné numZonePropage en entrée, on ne propagera que les numéros des zones paramétrées (ZOD) définis dans cette liste. Si en revanche, on a renseigné numZoneExclu, on propagera toutes les données définies dans le référentiel ZON, sauf celles dont le numéro est défini dans la liste. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
L’objet de sortie contient la liste des zones paramétrées et zones paramétrées datées :
|
Cas d’erreurs
| Code | Cause |
| ZOD_INEX | Zone datée non trouvée. |
| RZO_INEX | Segment de critère de segmentation inexistant. |
| SEG_INEX | Critère de segmentation inexistant. |
| DO_PASTRO | Enregistrement correspondant à un segment origine non trouvé. |
| ZN_INEX | Zone inexistante sur l’enregistrement. |
| CMC_INEX | Champ inexistant sur l’enregistrement. |
| ENR_INEX | Enregistrement correspondant à l’objet d’entrée inexistant. |