204 lines
5.1 KiB
Markdown
204 lines
5.1 KiB
Markdown
# 🗃️ CHECKLIST IMPORT MDB STABILI
|
|
|
|
## 📋 **PREPARAZIONE SISTEMA**
|
|
|
|
### **1. Installazione Dipendenze**
|
|
```bash
|
|
# Ubuntu/Debian
|
|
sudo apt-get update
|
|
sudo apt-get install mdbtools unixodbc unixodbc-dev
|
|
|
|
# Node.js dependencies
|
|
cd docs/000-IMPORT/03-SCRIPTS/
|
|
npm install axios
|
|
|
|
# Test installazione
|
|
mdb-tools --version
|
|
node --version
|
|
```
|
|
|
|
### **2. Preparazione File MDB**
|
|
- [ ] Copiare `stabili.mdb` in directory accessibile
|
|
- [ ] Verificare permessi lettura file
|
|
- [ ] Backup del file MDB originale
|
|
- [ ] Annotare path completo del file
|
|
|
|
**Path file:** `_______________________________`
|
|
|
|
### **3. Configurazione API**
|
|
- [ ] Server Laravel NetGescon attivo su porta 8000
|
|
- [ ] Token API amministratore disponibile
|
|
- [ ] Test connessione API: `curl -H "Authorization: Bearer TOKEN" http://localhost:8000/api/v1/auth/me`
|
|
|
|
**API Token:** `_______________________________`
|
|
|
|
---
|
|
|
|
## 🔍 **FASE VALIDAZIONE**
|
|
|
|
### **4. Test Connessione MDB**
|
|
```bash
|
|
# Test lettura tabelle
|
|
mdb-tables -1 /path/to/stabili.mdb
|
|
|
|
# Verifica tabella Stabili
|
|
mdb-schema /path/to/stabili.mdb -T Stabili
|
|
|
|
# Conteggio record
|
|
mdb-export /path/to/stabili.mdb Stabili | wc -l
|
|
```
|
|
|
|
**Record trovati:** `_______________________________`
|
|
|
|
### **5. Validazione Dati**
|
|
```bash
|
|
# Validazione completa senza import
|
|
node mdb-importer.js /path/to/stabili.mdb --validate-only --verbose
|
|
```
|
|
|
|
**Risultato validazione:**
|
|
- [ ] ✅ Tutti i record validi
|
|
- [ ] ⚠️ Alcuni errori di validazione (specificare): `_______________________________`
|
|
- [ ] ❌ Molti errori - rivedere dati
|
|
|
|
---
|
|
|
|
## 📦 **FASE IMPORT**
|
|
|
|
### **6. Backup Database NetGescon**
|
|
```bash
|
|
# Backup tabelle principali
|
|
mysqldump netgescon stabili > backup_stabili_$(date +%Y%m%d_%H%M%S).sql
|
|
mysqldump netgescon users > backup_users_$(date +%Y%m%d_%H%M%S).sql
|
|
```
|
|
|
|
**File backup:** `_______________________________`
|
|
|
|
### **7. Import Test (Batch Piccolo)**
|
|
```bash
|
|
# Import primo batch (10 record)
|
|
node mdb-importer.js /path/to/stabili.mdb \
|
|
--api-token YOUR_TOKEN \
|
|
--batch-size 10 \
|
|
--verbose
|
|
```
|
|
|
|
**Risultato test:**
|
|
- [ ] ✅ Import riuscito
|
|
- [ ] ❌ Errori (specificare): `_______________________________`
|
|
|
|
### **8. Import Completo**
|
|
```bash
|
|
# Import tutti i dati
|
|
node mdb-importer.js /path/to/stabili.mdb \
|
|
--api-token YOUR_TOKEN \
|
|
--batch-size 50 \
|
|
--verbose
|
|
```
|
|
|
|
**Risultato finale:**
|
|
- **Record processati:** `_______________________________`
|
|
- **Importati:** `_______________________________`
|
|
- **Duplicati:** `_______________________________`
|
|
- **Errori:** `_______________________________`
|
|
|
|
---
|
|
|
|
## ✅ **VERIFICA POST-IMPORT**
|
|
|
|
### **9. Controlli Database**
|
|
```sql
|
|
-- Verifica record importati
|
|
SELECT COUNT(*) as totale_stabili FROM stabili;
|
|
|
|
-- Verifica dati migrazione
|
|
SELECT COUNT(*) as con_cod_old FROM stabili WHERE cod_stabile_old IS NOT NULL;
|
|
|
|
-- Primi 5 record importati
|
|
SELECT id, denominazione, cod_stabile_old, directory_name
|
|
FROM stabili
|
|
WHERE cod_stabile_old IS NOT NULL
|
|
LIMIT 5;
|
|
```
|
|
|
|
**Risultati controlli:**
|
|
- [ ] ✅ Tutti i record importati correttamente
|
|
- [ ] ⚠️ Alcuni record mancanti
|
|
- [ ] ❌ Import incompleto
|
|
|
|
### **10. Test Funzionalità**
|
|
- [ ] Login sistema NetGescon
|
|
- [ ] Visualizzazione lista stabili
|
|
- [ ] Dettagli primo stabile importato
|
|
- [ ] Verifica dati bancari JSON
|
|
- [ ] Verifica configurazione rate
|
|
|
|
---
|
|
|
|
## 🔄 **PROSSIMI STEP**
|
|
|
|
### **11. Pianificazione Import Successivi**
|
|
- [ ] **Anagrafica** (dipende da: Stabili) - File: `anagrafica.mdb`
|
|
- [ ] **Unità Immobiliari** (dipende da: Stabili, Anagrafica) - File: `unita.mdb`
|
|
- [ ] **Movimenti Contabili** (dipende da: Stabili) - File: `movimenti.mdb`
|
|
- [ ] **Rate Condominiali** (dipende da: Stabili, Unità) - File: `rate.mdb`
|
|
|
|
### **12. Configurazione Ambiente**
|
|
- [ ] Script automatici per backup pre-import
|
|
- [ ] Monitoraggio errori import
|
|
- [ ] Notifiche completamento import
|
|
- [ ] Dashboard progresso migrazione
|
|
|
|
---
|
|
|
|
## 📞 **SUPPORTO E TROUBLESHOOTING**
|
|
|
|
### **Errori Comuni:**
|
|
|
|
**🔴 "mdb-tools command not found"**
|
|
```bash
|
|
sudo apt-get install mdbtools
|
|
```
|
|
|
|
**🔴 "File MDB non trovato"**
|
|
- Verificare path assoluto
|
|
- Controllare permessi lettura
|
|
- Verificare che il file non sia corrotto
|
|
|
|
**🔴 "API Token non valido"**
|
|
```bash
|
|
# Genera nuovo token
|
|
php artisan tinker
|
|
>>> $user = User::find(1); $user->createToken('import-token')->plainTextToken;
|
|
```
|
|
|
|
**🔴 "Tabella Stabili non trovata"**
|
|
- Verificare struttura MDB: `mdb-tables stabili.mdb`
|
|
- Il file potrebbe avere nome tabella diverso
|
|
|
|
**🔴 "Errori di validazione"**
|
|
- Controllare campi obbligatori
|
|
- Verificare formato CAP, codici fiscali
|
|
- Controllare lunghezza stringhe
|
|
|
|
### **Log Files:**
|
|
- Laravel: `storage/logs/laravel.log`
|
|
- Import Script: Console output + `--verbose`
|
|
- Database: Query log se abilitato
|
|
|
|
---
|
|
|
|
## 📝 **NOTE COMPLETAMENTO**
|
|
|
|
**Data import:** `_______________________________`
|
|
**Operatore:** `_______________________________`
|
|
**Durata totale:** `_______________________________`
|
|
**Note particolari:**
|
|
```
|
|
_________________________________________________________________
|
|
_________________________________________________________________
|
|
_________________________________________________________________
|
|
```
|
|
|
|
**Firma completamento:** `_______________________________`
|