{ "database_info": { "file_name": "stabili.mdb", "database_type": "Microsoft Access", "version": "MDB (prima versione)", "encoding": "Windows-1252", "connection_string": "Driver={Microsoft Access Driver (*.mdb)};DBQ=stabili.mdb;", "note": "File database del vecchio programma Gescon" }, "tables": { "Stabili": { "table_name": "Stabili", "description": "Tabella principale contenente tutti i dati degli stabili condominiali", "primary_key": "cod_stabile", "fields": { "identificativi": { "cod_stabile": { "type": "AutoNumber", "description": "Codice univoco stabile (chiave primaria)", "netgescon_field": "cod_stabile_old", "required": true }, "nome_directory": { "type": "Text(255)", "description": "Nome directory per organizzazione file e documenti", "netgescon_field": "directory_name", "required": true, "note": "Importante per collegare archivi futuri" } }, "anagrafica_stabile": { "denominazione": { "type": "Text(255)", "description": "Denominazione completa del condominio", "netgescon_field": "denominazione", "required": true }, "indirizzo": { "type": "Text(255)", "description": "Indirizzo completo", "netgescon_field": "indirizzo", "required": true }, "cap": { "type": "Text(5)", "description": "Codice postale", "netgescon_field": "cap", "required": true }, "citta": { "type": "Text(100)", "description": "Città", "netgescon_field": "citta", "required": true }, "provincia": { "type": "Text(2)", "description": "Sigla provincia", "netgescon_field": "provincia", "required": true }, "codice_fiscale": { "type": "Text(16)", "description": "Codice fiscale condominio", "netgescon_field": "codice_fiscale", "required": false } }, "dati_bancari": { "iban_bancario": { "type": "Text(27)", "description": "IBAN conto corrente bancario principale", "netgescon_field": "iban_principale", "required": false }, "banca": { "type": "Text(255)", "description": "Nome istituto bancario", "netgescon_field": "banca_denominazione", "required": false }, "abi": { "type": "Text(5)", "description": "Codice ABI banca", "netgescon_field": "abi", "required": false }, "cab": { "type": "Text(5)", "description": "Codice CAB filiale", "netgescon_field": "cab", "required": false }, "iban_postale": { "type": "Text(27)", "description": "IBAN conto corrente postale", "netgescon_field": "iban_postale", "required": false }, "conto_postale": { "type": "Text(20)", "description": "Numero conto corrente postale", "netgescon_field": "cc_postale", "required": false } }, "dati_catastali": { "AC_Foglio": { "type": "Text(10)", "description": "Foglio catastale", "netgescon_field": "catasto_foglio", "required": false, "note": "Dati catastali base per successivi dettagli unità" }, "AC_partic": { "type": "Text(10)", "description": "Particella catastale", "netgescon_field": "catasto_particella", "required": false, "note": "Particella principale o di riferimento" } }, "gestione_amministrativa": { "cf_amministratore": { "type": "Text(16)", "description": "Codice fiscale amministratore", "netgescon_field": "amministratore_cf", "required": false }, "data_nomina": { "type": "DateTime", "description": "Data nomina amministratore", "netgescon_field": "data_nomina_amministratore", "required": false }, "num_condomini": { "type": "Integer", "description": "Numero totale condomini", "netgescon_field": "totale_unita", "required": false }, "num_scale": { "type": "Integer", "description": "Numero scale edificio", "netgescon_field": "numero_scale", "required": false } }, "configurazione_rate": { "ORD_trimestre1": { "type": "Boolean", "description": "Emissione rate ordinarie 1° trimestre", "netgescon_field": "config_rate_ord_q1", "required": false, "note": "True/False per attivazione emissione automatica" }, "ORD_trimestre2": { "type": "Boolean", "description": "Emissione rate ordinarie 2° trimestre", "netgescon_field": "config_rate_ord_q2", "required": false }, "ORD_trimestre3": { "type": "Boolean", "description": "Emissione rate ordinarie 3° trimestre", "netgescon_field": "config_rate_ord_q3", "required": false }, "ORD_trimestre4": { "type": "Boolean", "description": "Emissione rate ordinarie 4° trimestre", "netgescon_field": "config_rate_ord_q4", "required": false }, "RIS_trimestre1": { "type": "Boolean", "description": "Emissione rate riserva 1° trimestre", "netgescon_field": "config_rate_ris_q1", "required": false, "note": "Rate per fondo di riserva" }, "RIS_trimestre2": { "type": "Boolean", "description": "Emissione rate riserva 2° trimestre", "netgescon_field": "config_rate_ris_q2", "required": false }, "RIS_trimestre3": { "type": "Boolean", "description": "Emissione rate riserva 3° trimestre", "netgescon_field": "config_rate_ris_q3", "required": false }, "RIS_trimestre4": { "type": "Boolean", "description": "Emissione rate riserva 4° trimestre", "netgescon_field": "config_rate_ris_q4", "required": false } }, "metadati": { "data_creazione": { "type": "DateTime", "description": "Data creazione record nel vecchio sistema", "netgescon_field": "data_creazione_old", "required": false }, "data_modifica": { "type": "DateTime", "description": "Ultima modifica nel vecchio sistema", "netgescon_field": "data_modifica_old", "required": false }, "note": { "type": "Memo", "description": "Note e annotazioni varie", "netgescon_field": "note_migrazione", "required": false }, "attivo": { "type": "Boolean", "description": "Stabile attivo/inattivo", "netgescon_field": "stato_attivo", "required": false, "default": true } } } } }, "mapping_netgescon": { "target_table": "stabili", "mapping_rules": { "direct_mapping": [ { "source": "cod_stabile", "target": "cod_stabile_old" }, { "source": "nome_directory", "target": "directory_name" }, { "source": "denominazione", "target": "denominazione" }, { "source": "indirizzo", "target": "indirizzo" }, { "source": "cap", "target": "cap" }, { "source": "citta", "target": "citta" }, { "source": "provincia", "target": "provincia" }, { "source": "codice_fiscale", "target": "codice_fiscale" }, { "source": "num_condomini", "target": "totale_unita_immobiliari" }, { "source": "num_scale", "target": "numero_scale" } ], "computed_mapping": [ { "target": "comune_id", "computation": "lookup_comune_by_name_provincia", "source_fields": [ "citta", "provincia" ], "note": "Trova ID comune nella tabella comuni_italiani" }, { "target": "amministratore_id", "computation": "lookup_amministratore_by_cf", "source_fields": [ "cf_amministratore" ], "note": "Collega all'amministratore tramite codice fiscale" }, { "target": "codice_edificio", "computation": "generate_building_code", "source_fields": [ "cod_stabile", "nome_directory" ], "note": "Genera codice univoco edificio per NetGescon" } ], "json_mapping": [ { "target": "dati_bancari", "format": "json", "fields": { "iban_principale": "iban_bancario", "iban_postale": "iban_postale", "banca_denominazione": "banca", "abi": "abi", "cab": "cab", "cc_postale": "conto_postale" } }, { "target": "dati_catastali", "format": "json", "fields": { "foglio": "AC_Foglio", "particella": "AC_partic" } }, { "target": "configurazione_rate", "format": "json", "fields": { "ordinarie": { "q1": "ORD_trimestre1", "q2": "ORD_trimestre2", "q3": "ORD_trimestre3", "q4": "ORD_trimestre4" }, "riserva": { "q1": "RIS_trimestre1", "q2": "RIS_trimestre2", "q3": "RIS_trimestre3", "q4": "RIS_trimestre4" } } } ] } }, "import_strategy": { "connection_method": "odbc_mdb", "batch_size": 50, "transaction_mode": "per_batch", "error_handling": "continue_on_error", "validation_level": "strict", "backup_before_import": true, "rollback_on_critical_error": true }, "next_imports": { "planned_tables": [ { "name": "Anagrafica", "description": "Dati condomini/proprietari", "depends_on": [ "Stabili" ], "link_field": "cod_stabile" }, { "name": "Unità", "description": "Unità immobiliari dettagliate", "depends_on": [ "Stabili", "Anagrafica" ], "link_field": "cod_stabile" }, { "name": "Movimenti", "description": "Movimenti contabili", "depends_on": [ "Stabili" ], "link_field": "cod_stabile" }, { "name": "Rate", "description": "Rate condominiali emesse", "depends_on": [ "Stabili", "Unità" ], "link_field": "cod_stabile" } ] } }