Skip to content

Module d'élaboration budgétaire (approche structurée « A »)

Prolonge Projection / Saisie (base + ajustement + commentaires). Un budget = une campagne (cf. ForecastCampaign déjà en base) dont la base est un forecast/extrapolation, qu'on ajuste par méthode de calcul selon le type de poste. À terme, ouverture possible vers un tableur libre « B ».

0. Cadrage : Restitution ≠ Budget (deux temps distincts)

1) Restitution (reporting / projection / dashboards) — déjà conçu dans rapport

  • Doit rester paramétrable pour s'adapter à plusieurs clients.
  • Alimentée majoritairement par les ERP (compta, facturation, paie) → données en lecture.
  • L'architecture actuelle de rapport convient : c'est le socle, on ne le refait pas.

2) Budget — trois façons de faire (non exclusives)

  • a) Comptable → un module dans rapport : grille structurée (méthodes de calcul, §2). Le plus standard.
  • b) RH → raisonner SIRH / ERP de paie : registre des salariés détaillé (§2.b). Modélisation sur-mesure.
  • c) Métiermoteur paramétrable (config par client) : on absorbe les spécificités par configuration (drivers, formules, grilles), sans recoder. Générique et réutilisable, conçu pour être très agile.

Priorités posées : (c) = moteur paramétrable par client (pas du code jetable) ; et modéliser une vraie partie RH (b) (noms des personnes, dates d'arrivée/départ, contrats & types de contrat, poste, salaire, primes, ancienneté…), amorcée depuis l'ERP de paie puis projetée dans rapport. Les méthodes de calcul du §2 (CA / MS / le reste) vivent dans l'approche comptable (a) ; (b) est la version fine/SIRH de la masse salariale ; (c) est le moteur configurable transverse.

0. Cadrage stratégique : restitution ≠ budget

Deux briques de nature différente, à ne pas confondre :

  • Restitution (cœur de Rapport)paramétrable, multi-clients. Alimentée majoritairement par les ERP (compta, facturation, paie). L'architecture actuelle de Rapport (dimensions, scénarios, vues, dashboards, saisie) est la bonne base → on la garde telle quelle.

  • Budget (élaboration)trois façons de faire, très différentes :

    • a) Comptable → un module dans Rapport : décomposition par poste (cf. §2), base + ajustement + inflation. Faisable nativement.
    • b) RH → on bascule en logique SIRH / ERP de paie : registre salariés détaillé (cf. §2.b). Modèle de données dédié.
    • c) Métiersur-mesure, très agile pour absorber les spécificités de chaque client (s'appuie sur §2.a Projets/Service + drivers volume). Pas de modèle figé.

    Convictions : sur-mesure assumé sur (c) métier, et modéliser une vraie partie RH (b) (personnes nommées, contrats, salaires…) — pas une simple ligne « masse salariale ».

    Relation §0 ↔ §2 : §2 décrit la maille comptable par poste (a) ; (b) la spécialise en registre RH, (c) en sur-mesure métier.

1. Base du budget

  • Référence de départ : généralement Fcst P10 (octobre) ou extrapolation fin octobre.
  • Réutilise le mécanisme de base des campagnes (baseScenario) : ajouter l'option « forecast figé / P10 » en plus de Budget / A-1. (Lien avec la suite prévue « figer un forecast comme base ».)
  • Maille : poste × mois × établissement (comme Saisie).

2. Trois méthodes de calcul (par poste / groupe de postes)

Chaque poste a une méthode qui pilote sa saisie :

a) CA — deux modes selon le métier

Mode 1 — Volume × Prix (récurrent / unités)

  • Part toujours de la base, qu'on ajuste.
  • Drivers par ligne : quantité (volume) et prix → CA = Σ (quantité × prix).
  • Saisie : ajuster volumes et/ou prix (delta vs base).

Mode 2 — Projets / Service (par client)

  • Clients = liste libre (créée dans le budget ; pas rattachée à une dimension existante).
  • Une fiche par client :
    • CA attendu annuel, avec répartition par mois (saisie annuelle ventilée, ou directement mois par mois).
    • Probabilité optionnelle (pondération pipeline) → permet un CA pondéré à côté du CA brut.
  • Bloc « à aller chercher » : objectif de CA non encore attribué à un client (pipeline / reste à gagner).
    • Répartissable (par commercial / segment / sous-bloc), pas forcément un montant unique.
    • Deux modes au choix : saisie libre, ou calculé = cible totale − Σ fiches clients.
  • Total CA = Σ fiches clients (+ pondération) + « à aller chercher ».
  • Au fil de l'année, le « à aller chercher » se transforme en fiches clients quand les affaires sont gagnées.

b) Masse salariale — registre salariés (mini-SIRH, sur-mesure)

Approche RH : on raisonne SIRH / paie, pas en lignes comptables. Extrapolation de la MS réelle, salarié par salarié.

Source de la donnée (décidé) : hybride. Rapport amorce le registre depuis l'ERP de paie (photo réelle des salariés), puis on le projette/ajuste sur 12 mois dans rapport. Le réel reste à la paie ; le prévisionnel (arrivées, départs, augmentations, primes…) vit dans rapport. → Nécessite un import paie (API ou fichier) au démarrage de campagne.

Modèle « Salarié » (réel importé, ou poste à pourvoir créé dans rapport) :

  • Identité : nom (/ prénom), matricule éventuel.
  • Rattachement : établissement, service, poste / fonction.
  • Contrat : type (CDI, CDD, alternance, stage, intérim…), date de début, date de fin (si CDD), ETP / quotité (%).
  • Dates & ancienneté : date d'arrivée, date de départ prévue, ancienneté (calculée).
  • Rémunération : salaire de base, primes (collectives / individuelles), augmentations (générale / individuelle).
  • Statut projeté par mois : présent / arrivée / départ / remplacé / non remplacéETP mensuel.

Construction du coût par salarié (par mois) : salaire P10 (ou de base)

  • augmentation générale (RH) + primes collectives (RH/manager)
  • augmentation individuelle + prime individuelle (manager) → × ETP du mois → × (1 + taux de charge)

Paramètres globaux :

  • Taux de charge (RH) — partir du réel.
  • Médecine du travail & assimilés (RH) — montant / ETP ou % de la MS.

➜ Agrégation des coûts mensuels par salarié = masse salariale (par établissement / service / poste). ➜ C'est le sous-module le plus lourd : registre + projection mensuelle + chiffrage (cf. phasage §6).

c) Le reste (autres produits / charges)

  • Souvent une extrapolation de la base.
  • On ajuste + on applique l'inflation : taux par défaut décidé par la DAF, modifiable ligne à ligne.
  • ➜ Très proche de Projection/Saisie actuel (base + ajustement) + un facteur inflation.

3. Commentaires

  • Toute ligne commentable.
  • Deux niveaux : commentaire à l'année, ou somme des commentaires mensuels (déjà partiellement en place côté Saisie).

4. Rôles (qui saisit quoi)

  • DAF : taux d'inflation par défaut.
  • RH : taux de charge, médecine du travail, augmentation générale, (primes collectives).
  • Manager : augmentations & primes individuelles, (primes collectives).
  • Gating par rôle → s'appuiera sur le module droits (permissions-model.md). En attendant : champs modélisés, gating branché plus tard.

5. Réutilisation de l'existant

  • ForecastCampaign / ForecastAdjustment (base + delta + commentaire) → socle du budget.
  • Écran Projection / Saisie → base de l'UI (grille postes × mois, atterrissage live).
  • Dimensions (postes = nœuds Catégorie), établissement en filtre, unités/format.

6. Phasage proposé

  1. Base = P10 / extrapolation : ajouter l'option de base « forecast » + notion de campagne budget.
  2. Méthode « le reste » (extrapolation + inflation)quasi déjà là : ajouter facteur inflation (défaut DAF + surcharge ligne) + commentaire annuel. ➜ point de départ recommandé (rapide, réutilise Projection).
  3. Méthode CA : Volume × Prix (drivers volume/prix), puis Projets/Service (fiches clients + « à aller chercher »).
  4. Méthode Masse salariale (RH / mini-SIRH) : registre salariés + projection mensuelle + chiffrage + charges + médecine. (le plus gros — sous-module à part)
  5. Approche métier (c) : moteur paramétrable (drivers/formules/grilles configurables par client) — lot transverse, à concevoir générique.
  6. Workflow : saisir → contrôler → figer → comparer (réel vs budget).

Dépendances : (3) le mini-SIRH (+ import paie) et le gating par rôle touchent fortement le modèle de données + droitsà cadrer avec le CTO (Postgres, schéma). (1) est faisable tout de suite sur l'existant.