API Gestion Déclinaison modifier Tarif Déclinaison

Version ACE : 1.3  

Package : fr.ACE.metier.bc4j.produit.common

GestionDeclinaisonmodifierTarifDeclinaison

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

Cette API permet de modifier un prix sur une ou plusieurs déclinaisons associées à un produit de référence.

API imbriquées : GestionTarifsmodifierTarif - GestionDeclinaisondetacherTarifVariante -

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

RAS.

Paramétrage (PPE)

Aucun.

Processus, contrôles et règles de gestion

ETAPE DESCRIPTION DU PROCESSUS
Déclenchement

Conditions de déclenchement de l’API

Les champs suivants doivent être renseignés :
  • code Achat/Vente (achvte),
  • code produit (codpro),
  • code devise (coddev),
  • date de début de période (datdeb),
  • sigle tiers (sigtie) si « achvte » = « A » ou « G »,
  • valeur du critère 1 ou du critère 2 ou du critère 3 (valcrit1, valcrit2 ou valcrit3).

Résumé

L’API recherche les variantes produit concernées par la mise à jour et, pour chacune d’elles, appelle l’API GestionTarifsmodifierTarif. La recherche se limite à l’assortiment du magasin sur une connexion magasin.

 

Si le champ « sigPDV » n’est pas renseigné en entrée, alors la recherche est réalisé grâce à une requête SQL dynamique sur la table PRO comme suit :

Select ……. From Pro, mev mevPro

Where

mevPro.codsoc = ?

and mevPro.codent = ‘PRO’

and mevPro.segment = ‘ ‘

and mevPro.codsoc_phy = Pro.codsoc

and pro.proref = ?

and pro.valcrit1, 2 et/ou 3 = ?

Sinon la recherche est réalisée grâce à une vue dynamique entre la table PRO et la table PRC comme suit :

Select ……. From Pro, Prc, mev mevPro, mev mevPrc

Where

mevPro.codsoc = ?

and mevPro.codent = ‘PRO’

and mevPro.segment = ‘ ‘

and mevPro.codsoc_phy = Pro.codsoc

and pro.proref = ?

and pro.valcrit1, 2 et/ou 3 = ?

and mevPrc.codsoc = mevPro.codsoc

and mevPrc.codsoc_phy = Prc.codsoc

and mevPrc.codent = ‘PRC’

and mevPrc.segment = A1 du ppe TYPMAG

and prc.codpro = pro.codpro

and prc.typtie = mevPrc.segment

and prc.sigfou = ?

  Pour chaque variante, l’API vérifie que la variante possède son propre tarif pour le type de tarif traité.
 

L’API utilise les enregistrements de la table des produits (table PRO).

Cas 1 :

Si tsc.achvte = ‘V’ ou ‘R’ ou ‘G’ alors codtar = pro.codtar si renseigné

Cas 2 :

Si tsc.achvte = ‘A’ alors codtar = prc.codtar si renseigné

La table des catalogues fournisseur (PRC) est utilisée pour obtenir les champs suivants :

- prc.codsoc

- prc.typtie=A1 du paramètre TYPFOU (type Fournisseur)

- prc.sigfou=tsc.sigtie

- prc.codpro=tsc.codpro

Si l’enregistrement correspondant n’est pas trouvée dans la table PRC, alors un message bloquant est affiché : PAS_PROFOU « @ n’est pas un fournisseur du produit @». La première variable correspond au champ « tsc.sigtie », et la seconde au champ « tsc.codpro »).

Si le produit trouvé (codtar) est différent du produit courant (tsc.codpro) et identique au produit de référence (pro.proref) alors la variante ne possède pas son propre tarif (son tarif est celui du produit de référence).

 

Si la variante ne gère pas ses propres tarifs, alors :

Si le champ « modeDetachement » est différent de « true », alors l’API traite la variante suivante.

Sinon l’API appelle une autre API GestionDeclinaisondetacherTarifVariante en utilisant, en entrée, les champs suivants :
  • codsoc,
  • produit : pro(variante).codpro.
  • proref : produit.codpro en entrée,

  L’API appelle l’API GestionTarifsmodifierTarif en utilisant les mêmes paramètres d’entrée que l’API modifierTarifDeclinaison sauf « produit.codpro » qui est renseigné avec le code variante (« pro(variante).codpro »).