Il file di lunedì mattina che non entra più
Arriva la mail del fornitore, allegato Excel, lo stesso di ogni mese, con lo stesso nome e la stessa faccia, e la persona che lo riceve fa il gesto di sempre, apre il foglio, lancia la macro che serve a portarlo dentro il gestionale, e stavolta non succede quello che deve succedere
O si ferma con un avviso che non dice niente di utile, oppure, e questa è la versione peggiore, va fino in fondo tranquilla e scrive dei numeri, solo che sono i numeri sbagliati, perché il fornitore ha infilato una colonna in mezzo e adesso nella casella dei prezzi c’è il codice a barre
Chi guarda il foglio a occhio se ne accorge in un secondo, la colonna nuova si vede, l’intestazione scritta in un altro modo si vede, e uno rimette le cose a posto a mano e va avanti, il mese dopo lo rifà uguale, e nessuno lo chiama un problema perché ognuna di quelle volte è troppo piccola per lamentarsi
Perché il file cambia anche se nessuno te l’ha detto
Un file Excel o CSV che arriva da fuori non è un accordo, è il risultato di una stampa che qualcuno, dall’altra parte, ha impostato una volta e poi ha modificato quando gli serviva, magari perché hanno aggiunto un campo al loro gestionale, o perché hanno cambiato il fornitore di software, o perché la persona che lo esporta è cambiata e ha spuntato un’opzione diversa
Dal loro punto di vista non è successo niente di grave, hanno aggiunto un’informazione, e nessuno pensa a te che quel file lo dai in pasto a un programma, quindi non ti avvisano, e non è nemmeno cattiveria, è che non gli passa per la testa
Le cose che si muovono sono quasi sempre le stesse, una colonna nuova in mezzo, l’intestazione che da Importo diventa Importo netto, il separatore dei decimali che passa dalla virgola al punto, la data che cambia verso, due righe di titolo aggiunte in cima, il foglio che si chiama in un altro modo
La differenza sta in come il file viene letto
Qui c’è il punto pratico che divide un’automazione fragile da una che regge, ed è una cosa sola
La lettura fragile va a posizione, prendi la colonna C perché il prezzo sta nella colonna C, e finché sta lì funziona benissimo, il giorno che qualcuno infila una colonna prima della C il prezzo scivola in D, ma il programma continua a leggere la C, e la legge senza fatica, perché lì dentro un valore c’è, è solo un altro valore
La lettura che regge va a intestazione, cerca la colonna che si chiama Prezzo, e non le importa se è la terza o la settima, se il fornitore ne aggiunge due in mezzo non cambia niente, il nome resta e la colonna viene trovata dov’è finita
Poi si aggiunge la parte che conta ancora di più, cosa succede quando l’intestazione attesa non c’è, perché prima o poi capita, e a quel punto il sistema si ferma, dice che nel file di questo mese non trova la colonna Prezzo, e non prova a indovinare quale sia, non prende la più vicina, non tira a caso
Le altre reti che si mettono intorno
L’intestazione da sola non basta, perché a volte il nome resta identico e a cambiare è il contenuto, quindi si controlla anche che dentro ci sia quello che deve esserci, un prezzo deve essere un numero, una data deve essere una data plausibile, un codice deve esistere nella tua anagrafica
E poi c’è il controllo che vale più di tutti gli altri messi insieme, se il file porta un totale, la somma delle righe lette deve fare quel totale, e se non lo fa vuol dire che qualcosa nella lettura è andato storto, anche se non sai ancora cosa
Sui listini si mette anche la soglia di scostamento, un prezzo che si muove più di quanto hai deciso tu non passa da solo, perché il computer non sa che uno virgola venti diventato dodici è un errore, mentre la regola sulla soglia lo sa benissimo
Cosa serve per costruirla
Servono i file veri, non uno solo, meglio quelli di qualche mese diverso, perché è confrontandoli che si vede cosa in quel file è stabile e cosa balla, e la parte stabile è più grande di quanto sembra quando sei arrabbiato
Il fornitore continuerà a cambiare il suo file, questo non si evita, e infatti l’obiettivo non è che non cambi mai niente, l’obiettivo è che quando cambia tu lo sappia subito, invece di scoprirlo molto più tardi, guardando un report che non torna
Se vuoi vedere come funziona la lettura dei file dentro un lavoro intero, guarda la pagina su Excel e PDF, e se il tuo problema somiglia più al foglio con le macro che nessuno osa toccare, c’è una guida apposta su le macro di Excel che si rompono
