ex: il y a 15 jours, j'ai terminé les dernières modifs (corrections) à 9h07 pour un jury à ... 9h30.
hier, à 16h30 coup de fil stressé: les PV (procès verbaux) individuels ne s'affichent pas correctement, et le jury c'est demain à 9 heures!
Bienvenue dans la programmation SQ heLL !
car la requête pour les données du PV marchait parfaitement avant, et avait toujours marché (après débuggage, hein).
comment résoudre le problème?
déjà il faut identifier le problème... et faire une croix sur le départ du bureau à 17h30...
identification du problème:
- pour une année précise, le PV individuel ne s'affiche pas bien, ou plutôt il s'affiche toujours mal
=> j'imprime une feuille: ouais pas top
- je regarde pour une autre année (PV de la veille): ça marche nickel
hypothéses:
1 - c'est lié à l'année en cours: un truc déconne pour cette année précisément (lien entre l'étudiant et les moyennes, etc...)
=> or, si ça déconnait on l'aurait vu plus vite car ces liens sont utilisés ailleurs dans le programme de gestion des étudiants, et ça marche correctement, pour notre année y compris
2 - c'est lié à l'année en cours, en rapport précisément avec la requête des données du PV: les données de l'année sont bonnes, mais elles ont une particularité qui fait bugger le script
je pars sur l'hypothèse 2, j'imprime la procédure stockée qui ressort les notes et je lance une console SQ heLL
identification du bug:
dans la console, je lance la procédure d'un coté pour voir les données en sortie (toujours aussi moches!);
de l'autre coté, je lance à la main les requetes dans l'ordre du script.
la première requete est OK;
la deuxième affiche les données dans le désordre.
je vérifie: j'avais fait une modif pour ordonner les unités et les cours: ordre de coef des unités puis
ordre alphabétique des cours
je regarde la feuille: les unités mélangées ont le même coef, et les cours sont rangés dans un désordre apparent, mais dans l'ordre alphabétique.
je modifie l'ordre des données:
ordre de coef des unités puis
ordre alphabétique des unités puis
ordre alphabétique des cours
j'enregistre, je relance: tout remarche 8)
le bug n'était pas apparu avant à cause des coefs des unités tous différents, mais là pas de bol on avait les mêmes coefs.
je préviens la personne concernée, je résouds dans la foulée d'autres bugs (concernant une étudiante qui a partiellement doublé, plus complexe, mais aussi plus simple à résoudre si on s'y prend bien).
je renvoie des mails pour dire que tout est OK.
il est 17h59. je peux partir
j'ai maté SQ heLL !
A+
Pascal