netgescon-day0/docs/00-IMPORT/CHECKLIST-IMPORT-MDB.md

5.1 KiB
Executable File

🗃️ CHECKLIST IMPORT MDB STABILI

📋 PREPARAZIONE SISTEMA

1. Installazione Dipendenze

# 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

# 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

# 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

# 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)

# 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

# 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

-- 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"

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"

# 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: _______________________________