Creare un database con FileMaker: 10 errori da evitare – Prima parte
Sarà capitato anche a voi: un bel giorno spunta l’idea, la richiesta, la curiosità di sviluppare un database con Filemaker. Spinti dall’entusiasmo e dalla passione, ci lanciamo al computer a lavorare, magari per ore o addirittura per giorni. E poi, all’improvviso, ci accorgiamo che qualcosa non gira. Per fare una semplice operazione ci troviamo costretti a passaggi mirabolanti, le informazioni non sono sempre a portata di mano, il grafico delle relazioni diventa una ragnatela degna del miglior Spider-Man.
La diagnosi? Semplice: il nostro database non è, come dicono gli esperti, ben strutturato.
A questo punto non resta che una sola possibilità: prendere un bel respiro, buttare nel cestino il frutto di ore e ore di lavoro e tornare sui propri passi, progettando da capo tabelle, campi, relazioni e formati. La cosa vi suona familiare? Consolatevi: siete in buona compagnia! Proprio perché anch’io ho vissuto, all’inizio della mia esperienza con Filemaker, situazioni come quella sopra accennata, ho deciso di condividere il mio decalogo dei 10 errori più comuni per evitare di partire con il piede sbagliato.
Piccola nota personale: i consigli che troverete di seguito non sono farina del mio sacco, ma arrivano dall’amico Pier, che oggi non è più tra noi. Questo articolo è dedicato a lui.
Ecco il mio personale decalogo da tener sempre sotto mano:
1. Parti sempre dalla carta
Mai iniziare a creare tabelle, campi, relazioni senza aver prima schematizzato su un pezzo di carta la struttura del nuovo DB, anche in maniera grossolana. È un po’ la stessa cosa che facevi a scuola quando dovevi scrivere un tema: prima di cominciare preparavi uno schemino in cui individuare l’introduzione, il corpo e le conclusioni del testo. Stessa cosa vale per la progettazione di un DB: tanto tempo dedicherai alla predisposizione di uno schema a blocchi del tuo DB, tanto più ne risparmierai in seguito in termini di tempo e fatica.
2. Organizza i dati con cura
Non sottovalutare l’importanza di raggruppare i dati nelle tabelle. Le tabelle rappresentano insiemi di informazioni omogenee: meglio sono strutturate, più sarà semplice avere sempre sotto mano i tuoi dati.
3. Chi nasce quadro non può morire tondo!
Evita di impuntarti nel far eseguire a Filemaker operazioni non native o comunque non supportate. Esempio: non ostinarti nel voler fare a tutti i costi un “portale di un portale”: Filemaker non prevede questa possibilità. Eviterai colossali perdite di tempo, a fronte di risultati alquanto limitati.
4. Campi usati per le relazioni: chi tocca muore
Evita le relazioni con campi visibili, o peggio ancora con campi accessibili e modificabili dall’utente/utilizzatore. La relazione tra due tabelle si esprime, nella quasi totalità dei casi, attraverso ID univoci. Un esempio: se vuoi collegare la tabella A con la tabella B, devi creare nelle due tabelle un campo “ID” (campo numero ad immissione automatica ad incremento, praticamente un “contatore automatico”). È essenziale che questi ID non siano per nessun motivo essere accessibili o modificabili: il rischio è di perdere definitivamente la relazione di record.
5. Poca brigata, vita beata
Quando stai testando il corretto funzionamento di uno script o più in generale del tuo DB, non usare tanti record. Solo facendo girare il DB con pochi, pochissimi record riuscirai a capire con poca fatica se la tua soluzione risponde correttamente.
Conclusioni
I punti sopra elencati non sono i 10 comandamenti: sono consigli nati nel tempo dopo diverse esperienze e molti errori. Mi auguro che possano esservi utili per poter lavorare al meglio con Filemaker – e perché no, anche per divertirvi! Appuntamento alla prossima settimana con gli altri 5 errori da evitare nella costruzione di un database con Filemaker!
Vi è mai capitato di buttare all’aria settimane di lavoro per un errore in fase di progettazione? Qual è la vostra golden rule nella programmazione DB? Raccontaci la tua soluzione e condividi le tue idee con gli altri Guru: scopri la comunità Filemaker su Guru Corner!