le avventure di un capotecnico :-)

Giuro che è successo realmente. ne sono appena uscito :-)

Il cliente mi dice che una procedura di alimentazione (che viene eseguita tutti i mesi da 1 anno e mezzo a questa parte) ha dato un errore.

Mi faccio girare l'errore e viene fuori (dopo un po' di indagini e telefonate) che qualcuno (più precisamente "il programmatore" - non so ancora adesso chi sia) ha deciso di cambiare da numerico (in realtà da float, ma non facciamo i pignoli) a alfanumerico il tipo dato di una colonna di una tabella.

Ok. Allora chiedo: "che tipo dato, esattamente? e che lunghezza?" - così per fare le cose per bene...
Dopo un po' di tempo il mio interlocutore (che nel frattempo ha parlato con "il programmatore") mi richiama e mi dice che il tipo è nvarchar (come da post precedente, n perchè contiene numeri, var perchè non è di lunghezza fissa e char perchè può contenere caratteri). Rispetto alla lunghezza "fai o 4 o 5, di lunghezza... i codici sono tutti di quattro, ma non si sa mai".

Io allibito non trovo la forza di replicare. Decido di far finta di nulla e mi metto a modificare la procedura in modo da gestire il tutto.

Mando il tutto a loro... e mi dicono che non va ancora bene.

In effetti andando a vedere c'è qualcosa che non funziona, e il motivo è che oltre a cambiare il tipo dato hanno anche "paddato" i codici con zeri a sinistra (esempio: invece che '12' trovo '0012'). E le tabelle dalla mia parte non prevedevano questa cosa. Incidentalmente: ora che ho le tabelle davanti mi accorgo che invece del NVarChar di 4 o 5... hanno definito la colonna VarChar di 50. Grunt. Vabbè.

Ok. Mi armo di pazienza e sistemo.

Rilancio la procedura.

Sembra tutto a posto. Vado via...

Passa mezz'ora e mi richiamano! Pare che ci sia ancora "qualche problema"...

Cerco di farmi spiegare, ma non c'è nulla da fare, devo tornare per capire.

Ok. Sono davanti al database. Guardo e riguardo... alla fine capisco!

La colonna varchar di 50 deve andare in join con un'altra colonna sulla tabellona dei clienti (sempre roba loro) che "purtroppo" NON e' stata modificata, ed è ancora float !!! E le mie procedure o trattano il dato numerico o no... o comunque non posso da una parte avere il codice 12 e dall'altra il codice '0012' e sperare che la join funzioni...

A questo punto perdo la pazienza. Scrivo a tutti raccontando il tutto, e la BRILLANTE soluzione che conclude il tutto è....

"Facciamo così, rimettiamo tutto com'era prima".

AAAAAAAAAAAAAAAAGGGGGGGGGGGGGHHHHHHHHHHHH!!!!!!

Ok. è una candid camera.

p.s. non so ancora chi sia "il programmatore" :-)


 

Commenti

Post popolari in questo blog