Documentation PLUGIN DE CONFIGURATIONS
Breadcrumbs

Récapitulatif Calcul Prix


        Les différents éléments Prix de base et Plus-values composant le prix du contexte ou le prix final sont stockés dans les IT des Scénario commerciaux, et sont accessibles depuis la ligne de commande commerciales, avec l’action « consultation des informations techniques du scénario ».

        image-20230913-073835.png

        Remarque : le champ Type Prix est constitué de la constante IScPrix_ suivi de la référence du type de tarif.

        En sortie de chaque contexte la liste WfCfgPar (IT scénario pour le contexte courant) sera mise à jour de la façon suivante :

        • Type de Prix :Type IT : ITSTyp = “IScPrix_” + type de prix calculé

        • Détail du Prix : Sous Type IT : ITSTyp = « PrixBase » ou « PrixPV »

        • Prix Base ou PV :Code IT : ITSCod : Nature du code tarif lié 


        Les informations qui suivent sont stockées sous forme de liste chainée dans le champ ITSVal : valeur IT. Le séparateur est le CHR162 : |


        • Grille ou Nat PV : MOT(SEPARATEUR= VLO.CHR162, CHAINE= ITSVal, NUMERO= CLO.1 )
          Grille de tarif si prix de base ou concaténation de FamillePV_Nature PV si plus-value avec un séparateur CHR165

        • Détail PV : MOT(SEPARATEUR= VLO.CHR162 , CHAINE= ITSVal, NUMERO= CLO.2 ) : référence de la plus-value si PV ou vide si prix de base

        • Réseau : MOT(SEPARATEUR= VLO.CHR162, CHAINE= ITSVal, NUMERO= CLO.3 ). Référence du réseau – tarif trouvé. Vide si tarif public.

        • Client : MOT(SEPARATEUR= VLO.CHR162, CHAINE= ITSVal, NUMERO= CLO.4 ). Référence du Client tarif trouvé. Vide si tarif public.

        • N° Ordre PV: MOT(SEPARATEUR= VLO.CHR162, CHAINE= ITSVal, NUMERO= CLO.5 ). N° ordre lié à la nature de la PV.

        • ClePV1, 2 et 3 :MOT(SEPARATEUR= VLO.CHR162, CHAINE= ITSVal, NUMERO= CLO.6 ).

        Les Clés de traçabilité détail Plus-Values 1, 2 et 3 sont concaténées avec le séparateur CHR165


        • Montant Net : Champ Numérique 1 ITSNu1 : Montant net ou montant PV calculé, ce montant est égal au montant Brut * Coeff Formule tarif.

        • Coefficient Tarif : Champ Numérique2 ITSNu2 : coefficient PV pris en compte dans le calcul.

        • Montant Brut : Champ Numérique2 ITSNu3 : montant brut de la Grille ou PV

        • N° Ordre : Ordre de génération dans le calcul prix : ITSNOr


        Remarques :

        La lecture des IT ainsi générées pourra être réalisée pour le contexte courant à partir de la liste WfCfgPar  ou pour tous les contextes à partir de la liste WfCfgITSIni (IT scénario tous contextes) dont la structure est identique à la liste ci dessus à un champ prêt (CtxRef : référence du contexte sur lequel est rattaché l’IT).

        WfCfgPar contient les IT en cours de génération pour le contexte courant.

        WfCfgITSIni contient la totalité des ITs des contextes validés.

        Lorsque la ligne de commande est enregistrée suite à une création ou une modification, les données de la liste WfCfgPar sont accessibles depuis la table CFITCont.


        Exemple d’accès aux IT d’une ligne de commande.

        VLO.CdeNumCom = SCR.CdeNumCom

        VLO.CdeNumLig = SCR.CdeNumLig

        VLO.SepValIT = CHR( VALEUR= CLO.162 )

        VLO.CHR165 = CHR( VALEUR= CLO.165 )

        POUR CHAQUE/SOC BDB CFITCont AVEC BDB CFITCont.DeRefApp = CLO."GCDL" ET BDB CFITCont.DeCleApp1 = VLO.CdeNumCom ET BDB CFITCont.DeCleApp2 = VLO.CdeNumLig :

        SI BDB CFITCont.CfgCtxITSTyp COMMENCE_PAR CLO."IScPrix_"

        VLO.GrillePV = MOT( SEPARATEUR= VLO.SepValIT , CHAINE= BDB CFITCont.CfgCtxITSVal , NUMERO= CLO.1 )

        VLO.RefPV = MOT( SEPARATEUR= VLO.SepValIT , CHAINE= BDB CFITCont.CfgCtxITSVal , NUMERO= CLO.2 )

        VLO.Reseau = MOT( SEPARATEUR= VLO.SepValIT , CHAINE= BDB CFITCont.CfgCtxITSVal , NUMERO= CLO.3 )

        VLO.Client = MOT( SEPARATEUR= VLO.SepValIT , CHAINE= BDB CFITCont.CfgCtxITSVal , NUMERO= CLO.4 )

        VLO.NumOrdPV = MOT( SEPARATEUR= VLO.SepValIT , CHAINE= BDB CFITCont.CfgCtxITSVal , NUMERO= CLO.5 )

        VLO.ClePv = MOT( SEPARATEUR= VLO.SepValIT , CHAINE= BDB CFITCont.CfgCtxITSVal ,

        NUMERO= CLO.6 )

        VLO.Cle1DetPV = MOT( SEPARATEUR= VLO.CHR165 , CHAINE= VLO.ClePv , NUMERO=

        CLO.1 )

        VLO.Cle1DetPV = MOT( SEPARATEUR= VLO.CHR165 , CHAINE= VLO.ClePv , NUMERO=

        CLO.2 )

        VLO.Cle1DetPV = MOT( SEPARATEUR= VLO.CHR165 , CHAINE= VLO.ClePv , NUMERO=

        CLO.3 )

        VLO.NaturePV = CLO.""

        OUVRIR TV IScCodDes AVEC IScCodDes.IScType = CLO."NatTarif" ET IScCodDes.IScRef =

        BDB CFITCont.CfgCtxITSCod :

        VLO.LibNature = IScCodDes.IScDes

        FIN_BLOC

        SI BDB CFITCont.CfgCtxITSSTy = CLO."PrixBase"

        OUVRIR TV IScCodDes AVEC IScCodDes.IScType = CLO."CodeTarif" ET IScCodDes.IScRef =

        VLO.GrillePV :

        VLO.LibGrillePV = IScCodDes.IScDes

        FIN_BLOC

        FIN_BLOC

        SINON

        SI BDB CFITCont.CfgCtxITSSTy = CLO."PrixPV"

        VLO.NaturePV = MOT( SEPARATEUR= VLO.CHR165 , CHAINE= VLO.GrillePV , NUMERO= CLO.2 )

        VLO.GrillePV = MOT( SEPARATEUR= VLO.CHR165 , CHAINE= VLO.GrillePV , NUMERO= CLO.1 )

        OUVRIR TV IScCodDes AVEC IScCodDes.IScType = CLO."FamPV" ET IScCodDes.IScRef = VLO.GrillePV :

        VLO.LibGrillePV = IScCodDes.IScDes

        FIN_BLOC

        FIN_BLOC

        FIN_BLOC

        CREATION Liste LST.Sortie :

        PRENDRE Sortie Contexte = BDB CFITCont.RefDiapContexte

        PRENDRE Sortie Type = BDB CFITCont.CfgCtxITSTyp

        PRENDRE Sortie SSType = BDB CFITCont.CfgCtxITSSTy

        PRENDRE Sortie Code = BDB CFITCont.CfgCtxITSCod

        PRENDRE Sortie LibNatTarif = VLO.LibNature

        PRENDRE Sortie NumOrdre = BDB CFITCont.CfgCtxITSNOr

        PRENDRE Sortie GrillePv = VLO.GrillePV

        PRENDRE Sortie Designation = VLO.LibGrillePV

        PRENDRE Sortie NaturePV = VLO.NaturePV

        PRENDRE Sortie NumOrdrePV = VLO.NumOrdPV

        PRENDRE Sortie RefPV = VLO.RefPV

        PRENDRE Sortie Reseau = VLO.Reseau

        PRENDRE Sortie Client = VLO.Client

        PRENDRE Sortie MtNet = BDB CFITCont.CfgCtxITSNu1

        PRENDRE Sortie MtBrut = BDB CFITCont.CfgCtxITSNu2

        PRENDRE Sortie Coeff = BDB CFITCont.CfgCtxITSNu3

        PRENDRE Sortie Cle1 = VLO.Cle1DetPV

        PRENDRE Sortie Cle2 = VLO.Cle2DetPV

        PRENDRE Sortie Cle3 = VLO.Cle3DetPV

        FIN_BLOC

        FIN_BLOC

        FIN_BLOC