Version fonctionnelle

This commit is contained in:
2025-12-12 23:07:26 +01:00
commit cb8b5d9a12
42 changed files with 465285 additions and 0 deletions

View File

@@ -0,0 +1,308 @@
# 🚀 Endobest Dashboard - Quick Start Guide
**Quick Reference for Running the Dashboard**
---
## ⚡ 5-Minute Start
### Prerequisites
- Python 3.7+
- Internet connection
- Valid Ziwig credentials
- Configuration file in `config/Endobest_Dashboard_Config.xlsx`
### Three Simple Ways to Run
#### 1⃣ Full Data Collection (Recommended)
```bash
python eb_dashboard.py
```
- ✅ Collects fresh data from all APIs
- ✅ Runs quality checks
- ✅ Generates JSON + Excel
- ⏱️ Takes 2.5-5 minutes
- 💡 **Use this for:** Regular data updates, first run
#### 2⃣ Excel Export Only (Fast)
```bash
python eb_dashboard.py --excel-only
```
- ✅ Uses existing JSON data
- ✅ Regenerates Excel files
- ✅ NO data collection
- ⏱️ Takes 5-15 seconds
- 💡 **Use this for:** Testing new Excel configs, quick re-export
#### 3⃣ Quality Check Only
```bash
python eb_dashboard.py --check-only
```
- ✅ Validates existing data
- ✅ Runs coherence + regression tests
- ✅ NO export
- ⏱️ Takes 5-10 seconds
- 💡 **Use this for:** Verify data before sharing
---
## 🔑 Default Credentials
The script uses built-in defaults (press Enter to accept):
```
Login: ziwig-invest2@yopmail.com
Password: pbrrA765$bP3beiuyuiyhiuy!agx
Number of threads: [1-20, default 12]
```
---
## 📁 What Gets Created
### Output Files
```
your_directory/
├── endobest_inclusions.json (Patient data, ~6-7 MB)
├── endobest_inclusions_old.json (Backup from previous run)
├── endobest_organizations.json (Organization stats, ~17-20 KB)
├── endobest_organizations_old.json (Backup)
├── [Excel files] (If configured, e.g., Endobest_Output_2025-01-15.xlsx)
└── dashboard.log (Execution log)
```
### File Locations
All files are created in the directory where you run the script.
---
## ⚙️ Configuration (Excel File)
**File:** `config/Endobest_Dashboard_Config.xlsx`
### Tables Available
| Table | Purpose | When to Edit |
|-------|---------|--------------|
| **Inclusions_Mapping** | Define which patient fields to extract | When adding new fields to reports |
| **Excel_Workbooks** | Define Excel files to create | When changing workbook templates |
| **Excel_Sheets** | Configure data in Excel sheets | When modifying filters, sorts, column mapping |
| **Regression_Check** | Define quality check rules | When allowing new data changes |
**Changes take effect on next run** (no restart needed)
---
## 🔍 Monitoring Progress
### During Execution
```
Overall Progress [████████████░░░░░░░░░░░░░░] 847/1200
1/15 - Center 1 [██████████░░░░░░░░░░░░░░░░] 73/95
2/15 - Center 2 [██████░░░░░░░░░░░░░░░░░░░░] 42/110
3/15 - Center 3 [████░░░░░░░░░░░░░░░░░░░░░░] 28/85
```
### Checking Results
```bash
# View recent log entries
tail -n 50 dashboard.log
# Check for errors
grep ERROR dashboard.log
# View specific run
grep "2025-01-15" dashboard.log
```
---
## ✅ Quality Checks
### Two Validation Types
**1. Coherence Check**
- Compares API statistics vs. actual collected data
- Example: API says 145 patients, but only found 143 records
- Action: Warns if discrepancy > 10%
**2. Non-Regression Check**
- Compares current data vs. previous run
- Detects unexpected changes
- Action: Warns if changes violate configured rules
### What Happens if Issues Found
```
⚠ CRITICAL issues detected in quality checks!
Do you want to write the results anyway?
[Y/N]:
```
- **YES** → Continue with export (override)
- **NO** → Cancel export, keep previous files
---
## 🐛 Troubleshooting
### "Login failed"
- Check credentials
- Verify internet connection
- Try again (sometimes transient network issue)
### "Template file not found"
- Check `config/templates/` folder
- Verify filename matches Excel config exactly
### "No data in Excel sheets"
- Check filter conditions aren't too strict
- Verify data exists: run `--check-only` first
- Check JSON files have content
### "Script is slow"
- Increase worker threads (up to 20)
- Check internet bandwidth usage
- First run always slower (no optimization)
### "Need detailed error info"
```bash
python eb_dashboard.py --debug
# Check dashboard.log for verbose output
```
---
## 📊 Sample Output
### First 10 Lines of endobest_inclusions.json
```json
[
{
"Patient_Identification": {
"Organisation_Id": "12345-uuid",
"Organisation_Name": "Hospital A",
"Center_Name": "HOSP-A",
"Patient_Id": "PAT-001",
"Pseudo": "ENDO-001",
"Patient_Name": "Doe, John",
"Patient_Birthday": "1975-05-15",
"Patient_Age": 49
},
"Inclusion": {
"Consent_Signed": true,
"Inclusion_Date": "15/10/2024",
...
```
---
## 📈 Performance Expectations
### Typical Timings
| Operation | Small (50 orgs) | Medium (100+ orgs) | Large (200+ orgs) |
|-----------|---|---|---|
| Data Collection | 5-10 min | 10-20 min | 20-30 min |
| Quality Checks | 5-10 sec | 10-15 sec | 15-20 sec |
| Excel Export | 5-10 sec | 10-15 sec | 15-20 sec |
| **TOTAL** | **5-10 min** | **10-20 min** | **20-30 min** |
**Tip:** Excel export is fast in `--excel-only` mode (5-15 seconds always)
---
## 🎯 Common Tasks
### Task 1: Regular Data Collection
```bash
python eb_dashboard.py
# Full process: collect → checks → export
# Repeat weekly or as scheduled
```
### Task 2: Reconfigure Excel Reports
```bash
# 1. Edit config/Endobest_Dashboard_Config.xlsx
# 2. Add/modify rows in Excel_Sheets table
# 3. Run fast export:
python eb_dashboard.py --excel-only
# New Excel files generated in seconds
```
### Task 3: Verify Data Quality
```bash
python eb_dashboard.py --check-only
# Runs validation without modifying files
# Great for pre-distribution checks
```
### Task 4: Debug Issues
```bash
python eb_dashboard.py --debug
# Verbose logging sent to dashboard.log
# Check log for detailed error information
```
---
## 📚 Next Steps
### For Basic Usage
→ See **DOCUMENTATION_98_USER_GUIDE.md**
### For Configuration Details
→ See **DOCUMENTATION_99_CONFIG_GUIDE.md**
### For Field Mapping
→ See **DOCUMENTATION_11_FIELD_MAPPING.md**
### For Excel Export
→ See **DOCUMENTATION_13_EXCEL_EXPORT.md**
### For Architecture Understanding
→ See **DOCUMENTATION_10_ARCHITECTURE.md**
---
## 🆘 Emergency Contacts / Support
### Check Documentation First
1. **This Quick Start** - Common questions
2. **DOCUMENTATION_98_USER_GUIDE.md** - FAQ section
3. **dashboard.log** - Error details
### Common Issue Solutions
| Issue | Solution |
|-------|----------|
| Script hangs | Press Ctrl+C, check network |
| Login fails | Verify credentials, check internet |
| Slow collection | Increase worker threads (up to 20) |
| Excel template issues | Check `config/templates/` folder |
| Quality check warnings | Review regression config rules |
---
## ⚡ Pro Tips
1. **First Run:** Always run full collection, even if slow
2. **Testing Configs:** Use `--excel_only` for quick feedback
3. **Batch Processing:** Schedule with task scheduler or cron
4. **Performance:** More threads = faster (but check bandwidth)
5. **Backups:** Old JSON files kept automatically (`_old` suffix)
---
## 🔐 Data Privacy
⚠️ **Important:**
- JSON files contain patient data
- Keep files in secure location
- Delete backups if not needed
- Follow hospital/research protocols
---
**For complete technical details, see DOCUMENTATION_30_ARCHITECTURE_SUMMARY.md**
**Questions? Check the comprehensive documentation in the project folder.**