“File CDX strutturale non trovato”
In inglese: “Structural .CDX file is not found”
Cosa significa davvero
Quando una tabella ha un indice 'strutturale' (stesso nome della tabella, aperto automaticamente), un bit nell'header del DBF — il byte 28 — lo dichiara. Se il .CDX viene cancellato o perso ma il bit resta acceso, FoxPro cerca l'indice, non lo trova, e rifiuta di aprire la tabella: un singolo bit tiene in ostaggio tutti i tuoi dati.
Perché succede
- Il .CDX è stato cancellato manualmente o da una pulizia disco
- Backup che escludeva i file .CDX (scelta comune: 'tanto si rigenerano')
- Antivirus che ha messo in quarantena il file indice
Prova prima queste soluzioni gratuite
1. Ripristina il .CDX dal backup
Se il CDX è nel backup ed è coerente con la versione attuale della tabella, rimetterlo al suo posto risolve. Se la tabella è stata modificata dopo il backup, comparirà l'errore 114: reindicizza.
2. Da FoxPro: apertura forzata
USE tabella EXCLUSIVE con SET SAFETY OFF in alcune versioni permette di aprire e rigenerare. Se non hai VFP a disposizione, serve azzerare il flag nell'header.
Cosa fa FileSano per questo errore
Questo è esattamente il tipo di corruzione che FileSano ripara.
Azzera il bit 'indice strutturale presente' (byte 28) nell'header: la tabella torna apribile immediatamente, senza indice. Poi reindicizzi dal gestionale e tutto torna come prima.
Domande frequenti
Azzerare il flag è pericoloso?
No: il flag dice solo a FoxPro 'apri anche il CDX'. Azzerarlo non tocca nessun record. L'unica conseguenza è che gli indici vanno ricreati, cosa che il gestionale fa da solo con la reindicizzazione.
Altri errori dello stesso tipo
- “Non è una tabella” (errore 15)
- “Il file memo manca o non è valido” (errore 41)
- “L'indice non corrisponde alla tabella. Eliminare il file indice e ricreare l'indice” (errore 114)
- “Record fuori intervallo” (errore 5)
- “La tabella è danneggiata. Sarà necessario ripararla prima di poterla riutilizzare” (errore 2091)
- “Errore di lettura del file” (errore 1104)