Migrare FoxPro e Firebird: uno è finito, l’altro no. Come decidere

Migrare FoxPro è una scelta da pianificare: Microsoft non lo sviluppa più e il supporto esteso è terminato nel 2015. Con Firebird la situazione è diversa, perché il progetto è ancora attivo: spesso basta aggiornare la versione, a meno che non ti servano accesso remoto, cloud gestito o sviluppatori più facili da trovare. Sono due decisioni distinte, anche se vengono spesso confuse.

Entrambe le tecnologie reggono ancora molti gestionali di piccole e medie aziende, spesso costruiti su misura anni fa. Abbiamo lavorato su entrambe, e il primo chiarimento da fare è proprio questo: una è un sistema completo a fine vita, l’altra è solo un database, e per di più vivo.

Due situazioni molto diverse

Visual FoxProFirebird
Che cos’èLinguaggio e database insiemeSolo database
StatoSviluppo chiuso, supporto esteso terminatoProgetto attivo, con rilasci recenti
Cosa si sostituisceProgramma e datiSolo i dati, oppure nulla
Urgenza tipicaDa pianificareDipende dalla versione e dai bisogni

FoxPro: cosa c’è da sapere

Microsoft annunciò nel 2007 che non ci sarebbe stata una versione successiva alla 9, e il supporto esteso è terminato il 13 gennaio 2015. Come per altri programmi di quell’epoca, questo non significa che il tuo smetta di funzionare: significa che non hai un produttore a cui rivolgerti, e che è un’applicazione a 32 bit che resta su Windows.

I rischi pratici sono soprattutto questi:

  • Dati in file condivisi. Le tabelle sono spesso file DBF in una cartella di rete. Ogni PC ci scrive direttamente: una rete instabile, o un computer che si spegne nel momento sbagliato, può danneggiare file e indici.
  • Limiti di dimensione. Una tabella di Visual FoxPro non può superare i 2 GB. Molti non ci arrivano, ma chi cresce può trovarsi davanti a un muro improvviso.
  • Sicurezza minima. Chi può accedere alla cartella può, in pratica, leggere e copiare tutti i dati.
  • Competenze rare. Gli sviluppatori FoxPro esperti ci sono ancora, ma sono sempre meno e non vengono sostituiti.
  • Solo in ufficio. Lavorare da fuori richiede soluzioni di ripiego, come il desktop remoto.

Come si migra da FoxPro

La buona notizia è che in FoxPro i dati sono piuttosto accessibili, a differenza di molti gestionali chiusi. I file DBF sono leggibili con molti strumenti. La parte difficile è un’altra: le regole stanno nel programma. In FoxPro codice e dati vivono molto vicini, e calcoli importanti possono nascondersi dentro una schermata o in un report.

Di solito funziona così:

  1. Mettere i dati su un vero database. Si spostano le tabelle su un database server, verificando tipi di dato e campi di memo. È anche il momento in cui si scopre quanta pulizia serve. In questa fase può essere utile mantenere il programma attuale collegato al database nuovo, ma è una possibilità da verificare caso per caso.
  2. Estrarre le regole. Si legge il codice, se c’è, e si parla con chi usa il programma. Attenzione ai report: spesso contengono calcoli che nessuno ricorda.
  3. Sostituire un modulo alla volta con un’applicazione web, mentre il programma resta in uso. È lo stesso principio spiegato nella guida alla modernizzazione del software legacy.

Se non trovi il codice sorgente non è la fine: esistono strumenti che ne recuperano una parte dai programmi compilati, ma vanno verificati anche i diritti. Trovi cosa fare quando manca chi l’ha scritto in il fornitore del software ha chiuso.

Se accanto a FoxPro hai anche altri file sparsi, valgono gli stessi ragionamenti che facciamo per portare un database Access al cloud.

Firebird: quando non serve migrare

Firebird è un database open source, gratuito e tuttora mantenuto: il sito del progetto indica versioni stabili recenti della serie 5.0, e altre serie ancora disponibili. Non c’è quindi un motivo tecnico per abbandonarlo solo perché è “vecchio”. Ha anche il vantaggio di richiedere poca manutenzione, cosa molto apprezzata nelle piccole aziende.

Prima di tutto, controlla quale versione usi. Se è molto datata, il primo passo è spesso l’aggiornamento:

  • verifica che sia ancora mantenuta sul sito del progetto;
  • fai un backup e ripristinalo sulla versione nuova, perché un cambio di versione principale può richiedere la conversione del database;
  • prova il tuo programma su una copia, perché le versioni nuove possono essere più severe con alcune query e con i dati che prima erano tollerati.

Firebird: quando conviene migrare comunque

Ci sono buone ragioni per cambiare, ma sono di altro tipo:

  • Vuoi un database cloud gestito. I grandi fornitori cloud offrono servizi gestiti soprattutto per PostgreSQL, MySQL e SQL Server. Firebird, di norma, lo devi installare e curare tu.
  • Devi collegare molti programmi. Sono meno frequenti i connettori già pronti.
  • Cerchi competenze. Trovare chi conosce bene database più diffusi è, in genere, più semplice.
  • Il programma va comunque sostituito. Se stai rifacendo l’applicazione, ha senso scegliere anche il database più adatto per i prossimi anni.

Lo stesso discorso vale per molti programmi scritti in Delphi e in Visual Basic 6, che usano spesso Firebird o database simili. In quei casi, la decisione sul database va presa insieme a quella sul programma, non prima.

Cosa controllare nei dati, in entrambi i casi

  • Codifica dei caratteri. Le lettere accentate sono l’errore più classico: si scoprono spesso solo dopo, su nomi e indirizzi.
  • Date strane. Campi vuoti, date impossibili o anni scritti con due cifre, frequenti nei vecchi sistemi.
  • Numeri e decimali. Differenze di arrotondamento tra sistemi diversi possono spostare i totali.
  • Valori vuoti. FoxPro e Firebird li trattano in modo diverso rispetto a molti database moderni, e questo può cambiare il risultato di ricerche e calcoli.
  • Procedure nel database. Con Firebird, spesso una parte della logica sta in procedure e automatismi interni, che vanno riscritti se cambi database.

Per ognuno, il metodo è lo stesso: confronta i totali prima e dopo, su casi veri. Lo spieghiamo passo per passo in cambiare gestionale senza perdere dati.

Domande frequenti

FoxPro funziona ancora su Windows 11?

Molti programmi continuano a funzionare, ma Microsoft non dà più garanzie, quindi la verifica va fatta sul tuo caso, compresi i componenti esterni. Prima di aggiornare i PC, prova sempre su una macchina di test.

Devo per forza abbandonare Firebird?

No. Se è aggiornato, stabile e ti basta, puoi tenerlo. Cambialo solo se hai un motivo preciso, come una delle ragioni elencate sopra.

Posso portare un database Firebird sul cloud?

Sì, installandolo su un server virtuale nel cloud. Devi però gestire tu aggiornamenti, backup e sicurezza. Per sapere come ragionare su questa scelta, leggi spostare il server dell’ufficio sul cloud.