API Gestion Evénement dupliquer Poste

 

Version : 5.0-00

Edition spéciale ES1

Package : fr.generix.metier.bc4j.evenement.common

GestionEvenementdupliquerPoste

Schémas d’entrée et de sortie : IN OUT

Cette API permet de dupliquer un poste d’évènement à partir d’un poste modèle (issu du même évènement ou d’un autre évènement) tout en dupliquant à l’identique les autres informations associées à ce poste, tels que la ligne, les sous-postes éventuels, les médias, les textes libres ou encore les schémas de jalons par exemple.

API imbriquées :

GestionCommungererZoneParametree Duplication des ZOD ou tables de type xxx_CMP.
GestionEvenementrecalculerEcheance -  
GestionJalonsdupliquerModele Duplication des tables liées aux jalons.
GestionRepartitiondupliquerRepartition Duplication des EVRP
GestionUnitesconvertirQuantite Convertir "qtecde" en "qteul" (unité logistique)

Contraintes et limites de fonctionnement (hors périmètre)

RAS.

Paramétrage (PPE)

ACOMPTCRECATDUPEVEDUPEVPEVRP - FRDPST- GENRAOOPESTK - PAIFRA - QTESAIUNIVL -

Processus, contrôles et règles de gestion

Etape Description du Processus
Etape 1 Initialisation des données issues du schéma d'entrée :
  • Le mode de duplication est positionné à : « REPLICATION »
  • (le mode par défaut est le mode « PROPAGATION », utilisé dans l’API dupliquerEvenement).
  • On récupère le poste modèle (autrement appelé poste origine)
  • Si le poste à créer (poste dupliqué) n’est pas renseigné, on considère qu’il s’agit du même évènement que le modèle. On force le numpos à 0 (celui-ci étant calculé automatiquement dans ce cas par l’objet métier).
  • Lecture du poste origine : si inexistant, exception « ELT_PASTRO ».
Etape 2 Contrôle et mise à jour du poste origine :
  • Si le paramètre DUPEVP est positionné avec le N1 = 1
  • ð La qté du poste origine est scindée en 2 (la qté passée en entrée de l’API pour la duplication de ce poste est retirée de la qté du poste origine)
  • o Mise à jour de qtecde sur le poste origine
  • Si DUPEVP positionné avec N2 = 1
  • ð Contrôle que le poste d’origine n’a pas déjà été en partie livré (qteliv > 0)
  • o Sinon exception « QTE_LIVRE »
  • Si qtecde n’est pas renseigné en entrée de l’API, on duplique la qté du poste origine (mode standard)
Etape 3 Duplication du poste et des tables associées :
  • Duplication des attributs du poste origine sur le poste créé.
  • Si mode « PROPAGATION » et suivant le paramétrage de « DUPEVE », on reporte les identifiants (achvte, typeve, numeve, etc.) du poste modèle comme origine du poste créé (achvto, typevo, etc.)
  • Si UNIVL .N1 = 2
    • Si univl non renseigné, on le renseigne à partir du coduni du poste créé.
  • Duplication de(s) ligne(s) associée(s) (EVL )
    • Duplication éventuelle des sous-postes
    • Duplication des commentaires (EVT ) sur la ligne dupliquée
  • Duplication des commentaires (EVT) sur le poste
  • Si EVRP positionné ou FILLOG .A1 = « O »
    • Duplication de la répartition
  • Duplication des tiers associés (EVTA )
  • Si FRDPST .N1 = 1
    • Duplication des frais au poste (EVF avec poseve > 0)
  • Duplication des textes libres,
  • Duplication des médias,
  • Duplication des zones paramétrées datées (ZOD ou xxx_CMP)
  • Duplication des conditions tarifaires (EVR )
  • Si DUPEVP .A1 contient « J »
    • Duplication des jalons (entête JAL_E , jalons du modèle JAL_M et liens entre jalons JAL_L )
  • Si DUPEVP.A1 contient « C »

    Duplication des coûts forcés (EVU de type indfrc = « O »).

Etape 4 Gestion des composants

PROKIT : Si PROKIT.N1 = 1 et le produit concerné est un produit composé

  • o Création des composants au niveau des postes d’évènement (EVP )
  • o La nomenclature produit (nomenc) doit correspondre au A2 de PROKIT
  • o Les composants doivent avoir une période de validité correcte (datapp1 et datval1).
  • o Si le N1 de OPESTK est renseigné, on renseigne le top exilig sur les postes des composants
  • § Exilig = OPESTK.N1
Etape 5 Mise à jour du poste dupliqué :
  • Si N3 de DUPEVP renseigné :
    • o Mise à jour du n° de poste origine dans les données complémentaires (ou ZOD ) du poste créé afin de créer un lien entre le poste dupliqué et son poste modèle.
    • o Le n° de cette zone paramétrée est défini par le N3 de DUPEVP
  • Si N3 de QTESAI = 2 et N2 de QTESAI renseigné :
    • o Convertir la qtecde exprimée en coduni vers univl (unité logistique)
    • o Mettre à jour la qté exprimée en unité logistique dans une donnée complémentaire (ou ZOD ) du poste créé.
    • o Le n° de cette zone paramétrée est défini par le N2 de QTESAI

Cas d’erreurs

Cause Effet
Poste origine inexistant dans la table EVP. Exception levée « ELT_PASTRO »
Qté livrée sur le poste origine > 0 Exception levée « QTE_LIVRE »

Autres remarques…

La méthode dupliquerPoste (partie duplication du poste et des tables associées) est également appelée dans l’API dupliquerEvenement.