- Structure projet complete - Schema BDD (3 tables: Clients, Projets, Temps) - 6 modules VBA documentes - Scripts SQL de creation - Plan d'implementation pour agent - Base Access avec tables creees (Phase 1 complete) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
4.8 KiB
4.8 KiB
TimeTrack Pro - Guide MCP VBA
Comment utiliser VBA MCP Server pour construire ce projet.
Prerequis
- VBA MCP Server v0.6.0+ installe
- Microsoft Access installe
- "Trust access to VBA project object model" active dans Access
Outils MCP Disponibles
Pour Access
| Outil | Usage dans ce projet |
|---|---|
run_access_query |
Creer tables, executer SQL |
list_access_tables |
Verifier structure |
list_access_queries |
Lister requetes sauvegardees |
get_worksheet_data |
Lire donnees des tables |
set_worksheet_data |
Inserer donnees de test |
inject_vba |
Injecter les 6 modules VBA |
validate_vba |
Valider syntaxe avant injection |
create_backup |
Sauvegarder avant modifications |
Etape 1: Creer la Base Access Vide
Manuel: Ouvrir Access > Nouvelle base > Enregistrer comme TimeTrackPro.accdb
Emplacement: C:\Users\alexi\Documents\projects\timetrack-pro\db\TimeTrackPro.accdb
Etape 2: Creer les Tables
Utilise run_access_query pour executer chaque instruction SQL.
Les scripts sont dans: scripts/01_create_tables.sql
Table tbl_Clients
CREATE TABLE tbl_Clients (
ClientID AUTOINCREMENT PRIMARY KEY,
Nom TEXT(100) NOT NULL,
Email TEXT(100),
Telephone TEXT(20),
Notes MEMO,
DateCreation DATETIME DEFAULT Now()
)
Table tbl_Projets
CREATE TABLE tbl_Projets (
ProjetID AUTOINCREMENT PRIMARY KEY,
ClientID LONG NOT NULL,
Nom TEXT(100) NOT NULL,
Description MEMO,
TauxHoraire CURRENCY DEFAULT 0,
Actif YESNO DEFAULT True,
DateCreation DATETIME DEFAULT Now()
)
Table tbl_Temps
CREATE TABLE tbl_Temps (
TempsID AUTOINCREMENT PRIMARY KEY,
ProjetID LONG NOT NULL,
Date DATETIME NOT NULL,
Duree DOUBLE NOT NULL,
Description MEMO,
DateCreation DATETIME DEFAULT Now()
)
Verification
Utilise list_access_tables pour verifier que les 3 tables sont creees.
Etape 3: Inserer Donnees de Test
Utilise run_access_query ou set_worksheet_data pour inserer les donnees.
Les scripts sont dans: scripts/03_sample_data.sql
Exemple avec set_worksheet_data
# Clients
data = [
["Acme Corporation", "contact@acme.com", "01 23 45 67 89", "Client principal"],
["Tech Solutions", "info@techsol.fr", "01 98 76 54 32", "Startup tech"],
]
columns = ["Nom", "Email", "Telephone", "Notes"]
set_worksheet_data("TimeTrackPro.accdb", "tbl_Clients", data, columns, mode="append")
Etape 4: Injecter les Modules VBA
Utilise inject_vba pour chaque module.
Le code complet est dans: VBA_MODULES.md
Ordre d'injection recommande
mod_Config- Constantes et parametresmod_Utils- Fonctions utilitairesmod_DataAccess- CRUD donneesmod_Calculs- Fonctions de calculmod_Navigation- Navigation formulairesmod_Export- Export PDF/Excel
Exemple
inject_vba("TimeTrackPro.accdb", "mod_Config", "<code du module>")
Validation avant injection
validate_vba("<code>", file_type="access")
Etape 5: Verifier l'Installation
Lister les modules
Utilise la session manager pour lister les VBComponents.
Tester une fonction
-- Via run_access_query
SELECT * FROM tbl_Clients
Commandes Frequentes
Voir les tables
list_access_tables("db/TimeTrackPro.accdb")
Lire des donnees
get_worksheet_data("db/TimeTrackPro.accdb", "tbl_Clients")
Executer SQL
run_access_query("db/TimeTrackPro.accdb", sql="SELECT * FROM tbl_Temps WHERE Date > #2025-01-01#")
Ajouter une entree de temps
run_access_query("db/TimeTrackPro.accdb", sql="INSERT INTO tbl_Temps (ProjetID, Date, Duree, Description) VALUES (1, #2025-01-15#, 3.5, 'Travail effectue')")
Sauvegarder avant modification
create_backup("db/TimeTrackPro.accdb")
Limitations Connues
| Limitation | Workaround |
|---|---|
| Formulaires Access | Creer manuellement dans Access UI |
| Rapports Access | Creer manuellement dans Access UI |
| run_macro Access | Utiliser inject_vba + SQL direct |
| list_modules .accdb | Utiliser session manager COM |
Workflow Complet
1. create_backup → Sauvegarde
2. run_access_query → CREATE TABLE (x3)
3. list_access_tables → Verification
4. set_worksheet_data → Donnees test
5. validate_vba → Valider code
6. inject_vba → Injecter modules (x6)
7. get_worksheet_data → Verification finale
Fichiers de Reference
| Fichier | Contenu |
|---|---|
scripts/01_create_tables.sql |
SQL creation tables |
scripts/02_create_queries.sql |
Requetes sauvegardees |
scripts/03_sample_data.sql |
Donnees de test |
VBA_MODULES.md |
Code VBA complet |
DATABASE.md |
Schema detaille |