← Retour
❓ Aide & Documentation
Glossaire · Installation · Architecture · Modifier · Tests · Sécurité
🧭 Prospects PME/TPE📋 Cas d'usage© EULA© ThinknSolv 2026
📖 Glossaire
CandidatUn fournisseur potentiel pas encore validé — capturé et évalué dans le Module 1.
ScoreNote sur 100 calculée à partir de l'évaluation préliminaire déclarée et de la présence d'un email/téléphone — pas un algorithme de machine learning, une formule simple et transparente.
ValidationLe moment où un candidat devient un fournisseur (bouton "Valider" du Module 1) — crée une nouvelle fiche fournisseur reliée au candidat d'origine.
FournisseurEntité pivot de la base : chaque fournisseur peut avoir des contrats, des livraisons et des risques qui lui sont rattachés.
fournisseurIdIdentifiant technique qui relie un contrat/une livraison/un risque à son fournisseur — c'est ce qui rend la base "vraiment reliée" plutôt que 5 tableurs séparés.
Taux de servicePart des livraisons enregistrées comme "à temps" — calculé automatiquement à partir du Module 4, affiché sur le Hub et sur la fiche fournisseur (Module 2).
Composants fournisChamp optionnel du Module 1 (codes MRP tels que Z, Y, W) — déclare quels composants un candidat/fournisseur peut livrer. C'est le lien structuré entre un composant et son fournisseur (avant, seul le texte libre des contrats en gardait une trace).
Import CSV (Module 3)Permet de charger un fichier de besoins fournisseurs (issu de MRP-master) pour pré-remplir des contrats candidats. Si un seul fournisseur validé déclare fournir le composant importé, il est présélectionné (étiquette "auto") ; sinon vous choisissez manuellement. Rien n'est créé sans votre confirmation finale.
localStorageStockage intégré au navigateur — toutes les données de ce SRM y restent, sur cet ordinateur uniquement.
Sauvegarder tout / RestaurerSur le Hub — exporte/importe les 5 modules en un seul fichier JSON (srm-backup-AAAA-MM-JJ.json), pour se prémunir d'une perte de données. Distinct des CSV IN/OUT de l'audit Excel : ceci est une sauvegarde complète, non chiffrée — à protéger/supprimer après usage.
Node.jsRequis pour installer Claude Code — test_srm.py n'en a pas besoin (Python suffit).
Claude / Claude CodeClaude = l'IA sur claude.ai. Claude Code = la version qui travaille directement sur vos fichiers depuis un terminal.
🚀 Installer et lancer
☐ Double-cliquez sur Lancer-Application.bat (ou directement sur index.html) — il s'ouvre dans votre navigateur habituel, aucun serveur ni compte requis.
☐ Cliquez sur "🧪 Charger les données de démo" pour valider le parcours complet candidat → fournisseur → contrat/livraison/risque avant de saisir vos propres données.
☐ Gardez le dossier assets/ à côté des pages HTML — sans lui, les styles et boutons ne fonctionnent plus.
Pour le modifier avec Claude Code
1
Installer Node.js puis Claude Code
npm install -g @anthropic/claude-code
2
Installer Python (pour les tests)
https://www.python.org/downloads/ — cocher "Add to PATH".
3
Ouvrir PowerShell dans ce dossier, lancer Claude Code
claude
🧮 Excel IN / OUT — audit hors navigateur
En complément du navigateur, build_srm_excel.py lit des CSV optionnels et génère srm_OUT.xlsx, un classeur à 6 onglets (Candidats, Fournisseurs, Contrats, Livraisons, Risques, Tableau de bord) où chaque indicateur calculé est une vraie formule Excel — score candidat, taux de service, KPI du tableau de bord — jamais une valeur figée. L'onglet Fournisseurs est reconstruit automatiquement à partir des candidats à statut "Validé" (même logique que le bouton "Valider" du Module 1) — pas de CSV dédié pour lui.
Chaque module concerné (M1, M3, M4, M5) a un bouton "🧮 Vers Excel" qui génère le CSV IN correspondant à partir des données réellement présentes dans le navigateur. Téléchargez-le, déplacez-le dans ce dossier (à côté du script), puis lancez :
python3 build_srm_excel.py
python3 test_excel_srm.py
La deuxième commande pilote Excel via COM pour un recalcul réel et confirme 0 erreur de formule — nécessite Microsoft Excel installé.
💡 Une fois généré, double-cliquez sur Ouvrir-Excel.bat pour rouvrir srm_OUT.xlsx sans repasser par le terminal.
🗺️ Comment c'est construit
💡 Une seule base, 5 modules
Tout vit dans le même localStorage du navigateur, avec un champ fournisseurId qui relie les tables entre elles. Ouvrir la fiche d'un fournisseur (Module 2) affiche automatiquement ses contrats, ses livraisons et ses risques — ce n'est pas trois outils qui partagent juste une convention de nommage.
📁 Les fichiers du dossier
index.htmlHub — KPIs, accès aux 5 modules, chargement des données de démo.
m1-candidats.htmlCapture et évaluation initiale des candidats, validation en fournisseur.
m2-fournisseurs.htmlFiche fournisseur consolidée (pivot de la base).
m3-contrats.htmlSuivi contractuel par fournisseur + import CSV des besoins fournisseurs.
m4-livraisons.htmlLivraisons et taux de service par fournisseur.
m5-risques.htmlRisques fournisseurs (dépendance, qualité, délai, financier).
test_srm.pySuite de tests de non-régression.
srm_demo_data.jsonExtrait figé des données de démonstration, pour référence hors navigateur.
Ce projet reprend le même principe de base pivot reliée par identifiant que CRM (code adapté, pas partagé en direct), appliqué côté achats/fournisseurs plutôt que côté ventes/clients. Aucune lecture de fichier croisée entre les deux dossiers.

Le Module 3 (Contrats) peut aussi importer un CSV de besoins fournisseurs produit par MRP-master, lui-même alimenté par l'export du Module 6 de CRM — un chaînage CRM → MRP → SRM entièrement par fichiers CSV échangés manuellement, sans aucune dépendance technique.
✏️ Demander une modification à Claude Code
1️⃣ Précisez le module concerné (Candidats, Fournisseurs, Contrats, Livraisons, Risques).
2️⃣ Décrivez le comportement actuel puis voulu.
3️⃣ Une demande à la fois.
4️⃣ Si vous ajoutez un champ texte libre affiché à l'écran, rappelez qu'il doit passer par escapeHtml() — vérifié automatiquement par test_srm.py.
5️⃣ Demandez toujours python3 test_srm.py après coup.
✅ Tests de non-régression
⚠️ Ne considérez jamais une modification terminée juste parce que Claude Code dit "c'est fait" — vérifiez vous-même.
Lancez :
python3 test_srm.py
Vérifie : présence des fichiers, intégrité des liens internes, autonomie (aucune ressource externe), cohérence du modèle de données partagé entre les 5 modules (mêmes clés localStorage, champ fournisseurId utilisé de façon cohérente), échappement anti-XSS des champs texte libre, format stable de l'import CSV du Module 3 et confirmation explicite obligatoire avant création de contrat, présélection auto du fournisseur à l'import uniquement en cas de correspondance unique (composants), absence de composant MRP revendiqué par 2 fournisseurs à la fois dans la démo, cohérence du fichier de démonstration, absence de secret codé en dur.
🖱️ Vérification visuelle
☐ Charger les données de démo depuis le Hub, vérifier les 5 KPI
☐ Ouvrir un fournisseur (Module 2) et vérifier que ses contrats/livraisons/risques s'affichent
☐ Valider un candidat (Module 1) et vérifier qu'il apparaît bien dans le Module 2
☐ Importer besoins_fournisseurs_IN.csv (Module 3) — vérifier que les composants ayant un fournisseur unique déclaré (champ "Composants fournis", Module 1) sont présélectionnés (étiquette "auto"), choisir/confirmer les autres, et vérifier que le contrat apparaît
☐ Console (F12) sans message rouge sur les 6 pages
🛠️ Dépannage
SituationSolution
Un module affiche "Aucun fournisseur"Validez un candidat depuis le Module 1, ou chargez les données de démo depuis le Hub.
Les données de démo n'apparaissent pasRechargement forcé (Ctrl+F5) après avoir cliqué sur "Charger les données de démo".
Je veux repartir de zéroBouton "🗑️ Réinitialiser" sur le Hub — efface tout, irréversible.
🔒 Sécurité
🎯 Pourquoi la surface de risque est limitée ici
Application 100% locale, sans serveur, sans compte, sans donnée transmise à un tiers. Les données de démonstration sont explicitement fictives (aucune entreprise réelle).
✅ Vérifié par test_srm.py
OK Aucune ressource chargée depuis un domaine externe
OK Aucun secret codé en dur
OK Tous les champs texte libre échappés (anti-XSS)
OK Modèle de données cohérent entre les 5 modules (pas de clé localStorage orpheline)
L'usage des outils d'IA sur ce projet est encadré par une charte commune aux projets de TWIN agents IA — usages/outils autorisés, données interdites, validation humaine avant action, contact référent : Charte_IA.md.