Aller au contenu

Concepts détaillés - PT0CE

Table des matières

  1. Marge nette et calcul
  2. Architecture des cubes
  3. Remontée hiérarchique
  4. Bornes de prix et corridors
  5. Analyse de sensibilité prix
  6. Univers et règles métier
  7. Gestion des périodes

Marge nette et calcul

Définition

La marge nette est l'indicateur central de PT0CE. Elle représente la rentabilité d'une transaction :

Marge nette = (Prix de vente unitaire - Coût d'achat unitaire) / Prix de vente unitaire

Calcul détaillé

Pour chaque transaction :
1. Prix de vente unitaire = MT_CAB / QT_UF
2. Coût d'achat unitaire = PAS_NATIONAL_UNITAIRE (historique)
3. Marge nette = (CAB_UNITAIRE - PAS_NATIONAL_UNITAIRE) / CAB_UNITAIRE

Importance du PAS historique

  • Le PAS (Prix d'Achat Standard) varie dans le temps
  • PT0CE utilise le PAS actif au moment de chaque transaction
  • Table PT0CE_PAS_PRB_HISTORY : PAS jour par jour sur la période

Filtrage spécifique ZOOM1

Pour ZOOM1 uniquement : exclusion des transactions où CAB_UNITAIRE < PAS_NATIONAL_UNITAIRE (marges négatives)

Architecture des cubes

Qu'est-ce qu'un cube ?

Un cube est une agrégation unique de données selon plusieurs dimensions :
- Article : ID_ART ou niveau hiérarchique (HIE_N6, HIE_N5, etc.)
- Type Client : Segmentation client (ex: "RCI PI GI")
- Type Restaurant : Segmentation restaurant (ex: "Restaurant Traditionnel")
- Géographie : Zone géographique (seulement pour ZOOM1/ZOOM2)

Types de cubes

MASTER

Caractéristiques :
- Données réelles pour une combinaison spécifique
- SOURCE_TYPE = 'MASTER'
- Peut nécessiter une remontée hiérarchique
- Éligible à l'analyse de sensibilité

NATIONAL

Caractéristiques :
- Agrégation de TOUTES les transactions d'un article
- Dimensions = NATIONAL × NATIONAL × NATIONAL
- SOURCE_TYPE = 'NATIONAL'
- SOURCE_LEVEL = -1
- Pas de remontée nécessaire

Métriques calculées par cube

  • TRANSACTION_COUNT : Nombre de transactions
  • DISTINCT_MARGINS : Nombre de marges distinctes
  • CA_TOTAL : Chiffre d'affaires total
  • Percentiles : P10, P30, P40, P50, P60, P80, P90
  • ECART_TYPE : Écart-type des marges

Remontée hiérarchique

Principe

Quand un cube MASTER n'a pas assez de données (<30 marges distinctes), PT0CE remonte dans la hiérarchie pour trouver des statistiques fiables.

Hiérarchie produit

ID_ART → HIE_N6 → HIE_N5 → HIE_N4 → HIE_N3 → HIE_N2 → HIE_N1

Niveaux de remontée ZOOM1/ZOOM2 (21 niveaux)

Niveau 1-3   : ID_ART × dimensions
Niveau 4-6   : HIE_N6 × dimensions
Niveau 7-9   : HIE_N5 × dimensions
Niveau 10-12 : HIE_N4 × dimensions
Niveau 13-15 : HIE_N3 × dimensions
Niveau 16-18 : HIE_N2 × dimensions
Niveau 19-21 : HIE_N1 × dimensions

Pour chaque niveau produit, 3 combinaisons de dimensions :
1. Type_Client × Type_Restaurant × Geo
2. Type_Client × Type_Restaurant
3. Type_Client

Niveaux de remontée ZOOM3 (14 niveaux)

Même principe mais sans la dimension Geo :

Niveau 1-2   : ID_ART × dimensions
Niveau 3-4   : HIE_N6 × dimensions
...
Niveau 13-14 : HIE_N1 × dimensions

SOURCE_LEVEL

Indique d'où proviennent les statistiques :
- -1 : Cube NATIONAL
- 1 : Niveau le plus fin (article × toutes dimensions)
- 2-21 : Niveaux de remontée
- 22 (ZOOM½) ou 15 (ZOOM3) : Aucune donnée trouvée

Bornes de prix et corridors

Calcul des bornes

Pour chaque percentile, calcul du prix théorique :

Prix de vente = PAS actif / (1 - Percentile de marge)

Tableau des bornes

Borne Percentile Description
PL1/PL2 P90 PVC
PL2/PL3 P80 Paliers intermédiaires
PL3/PL4 P60 Paliers intermédiaires
PL4/PL5 P50 Paliers intermédiaires
PL5/PL6 P30 Paliers intermédiaires
PL6/PLX P10 Seuil de dérogation

Contraintes appliquées

  1. Contrainte minimale : Borne ≥ PAS actif
  2. Contrainte maximale : Borne ≤ PRB approprié
  3. Si PRB_TO_USE = 1 : PRB_RC (Restaurant Commercial)
  4. Si PRB_TO_USE = 2 : PRB_COLL (Collectivités)

Écarts au PAS

Pour chaque borne, calcul de l'écart :

ECART_PLx_PAS = Borne_PLx - PAS_ACTIF

Analyse de sensibilité prix

Objectif

Identifier les articles nécessitant une attention particulière lors des décisions de pricing.

Classification bidimensionnelle

Dimension Fréquence (F)

  • F1 : Top 25% des articles les plus commandés
  • F2 : Les 75% restants

Dimension Ventes (S) - Pareto

  • S1 : Articles générant 70% du CA du cube
  • S2 : Articles générant les 30% restants

Matrice de sensibilité

Fréquence Ventes Sensibilité Description
F1 S1 HIGH Articles critiques (forte fréquence ET gros CA)
F1 S2 MEDIUM Articles fréquents mais CA limité
F2 S1 MEDIUM Articles rares mais gros volumes
F2 S2 LOW Articles peu critiques

Application

  • Seuls les cubes MASTER ont une sensibilité
  • Les cubes NATIONAL n'ont pas de sensibilité (vision agrégée)

Univers et règles métier

Définition des univers

Les univers sont déterminés par les règles dans business_rules.py :

ZOOM1

  • RCI PINDEP (avec ou sans KAM)
  • RCI GINDEP sans KAM
  • RSI/RSC avec FG_HM = '1'
  • Autres cas spécifiques

ZOOM2

  • RCI GINDEP avec KAM
  • RSI sans FG_HM
  • RCI GC_REG

ZOOM3

  • RSC sans FG_HM 'HM'
  • RCC (chaînes nationales)

PRB_TO_USE

Déterminé par le mapping Type_Client :
- 1 : Utilise PRB_RC (Restaurant Commercial)
- 2 : Utilise PRB_COLL (Collectivités)

Standardisation FG_HM

  • Dans les CSV : 'X' → standardisé en '1'
  • Toute autre valeur → standardisée en '0'
  • Utilisé pour déterminer l'univers

Gestion des périodes

Calendrier fiscal Sysco

Structure 4-4-5 :
- Q1 : Juillet - Août - Septembre
- Q2 : Octobre - Novembre - Décembre
- Q3 : Janvier - Février - Mars
- Q4 : Avril - Mai - Juin

Période d'analyse

PT0CE analyse les 4 derniers trimestres fiscaux complets :
- Utilise SYS_MD_CALENDRIER_SYSCO
- Exclut le trimestre en cours
- Exemple : Au 15/01/2025, analyse Q4_2024 + Q3_2024 + Q2_2024 + Q1_2024

Tables temporelles

  • Horodatage format YYYYMMDD
  • Conservation de PT0CE_DIMENSION_MAPPING_YYYYMMDD pour PT1CE
  • Suppression automatique des autres tables temporaires