logo  
 
Translation :
 
   
 
Menu général :
 
   
 
Espace Membre :
 
 
Privé Se connecter


Se souvenir de moi ?


Mot de passe oublié

 
 
Liens Web :
 
   
 
Forum : Masquer l’entête
 
 
Accès rapide :

Effectuer une Recherche avancée OU


 
 
Version beta du 09/01/17  [30 réponses]
 
 


 
 
 
 
 
 
 
 
 
swinglo
starsj6.png
Dieu


avatar
Hors ligne

Nombre de posts: 961
Inscrit(e) le: 04 février 2008
Imprimer Permalien vendredi 24 mars 2017 à 16:22  

Yessssss, cela fonctionne smiley s8g29g.gif smiley s8g29g.gif smiley s8g29g.gif

C'est super cette possibilité de choisir les semaines que l'on veut afficher... cela va faire plaisir aux collègues qui ont des apprentis smiley sg3agg29g.gif on en avait parlé plusieurs fois....

Je vais essayer de coupler cela avec les périodes nommées.... pour avoir toujours la même sélection.

Laurent




 
 
 
 
 
 
fperciot
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 21
Inscrit(e) le: 08 septembre 2016
Imprimer Permalien lundi 27 mars 2017 à 12:04  

Bonjour Sylvain,
Malgré les corrections que j'apporte au fur et à mesure que je teste les fonctionnalités (je parle de colonnes dans les différentes tables de la base de données) je n'ai pas un VT 100% opérationnel et fonctionnel (il manque par-ci par-là des colonnes datecreation, taillefont, ...).
Est-ce que (pour partir d'une base saine plutôt que de faire des corrections petit à petit) tu pourrais mettre à notre disposition le dbvt.sql de création des tables vides pour la version du 09/01/2017.
Je demande cela car il sera surement plus facile de partir d'une base vierge et d'y importer les données extraites de notre base de prod plutôt que de partir de la base de prod et y faire les modifs.
Merci d'avance pour ta réponse,
Cdt,
Florent P.




 
 
 
 
 
 
Ψsylvain
Administrateur
stars7.png
Dieu Supreme


avatar
Hors ligne

Nombre de posts: 1576
Inscrit(e) le: 20 novembre 2004
Imprimer Permalien lundi 27 mars 2017 à 14:41  

Bonjour Florent,

Je prépare une base vierge avec la structure mise à jour et je dépose cela sur le site dès que possible.
Je pensais l'avoir déposé avec les scripts de mises à jour.

Sylvain


visual timetabler


E-mail Anti-spam


 
 
 
 
 
 
fperciot
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 21
Inscrit(e) le: 08 septembre 2016
Imprimer Permalien lundi 27 mars 2017 à 16:25  

Merci d'avance Sylvain pour le BDVT vierge.
Je continue mes tests, mais j'avoue que je rencontre pas mal de difficultés, notamment avec les nouvelles contraintes d'intégrité.
Je ne sais pas si je suis un peu en train de tout mélanger, mais je teste avec VT_RESEAU beta du 09/01/2017 avec ce que tu as mis dans le "package" de NETTOYAGE-BD-VT.7z mais j'ai plein de problèmes de colonnes qui n'existent pas (lors de la connexion de VT_RESEAU) et lorsque j'arrive à les corriger, les contraintes d'intégrité font des erreurs lors des ajouts de différentes ressources.
(j'ai des copies d'écran au cas où ...)
Le mieux, je pense, c'est d'attente le BDVT.sql et de repartir de 0, d'avoir une base vierge, dans laquelle j'importerai les données (nettoyées de ma base de prod).
Je suis en train de préparer la base pour 2017/2018, donc elle ne devrait pas être trop chargée et à peu près correcte.
(à moins que ma stratégie soit erronée smiley sg3agg28g.gif )
Encore merci pour ton aide,
Florent P.




 
 
 
 
 
 
Ψsylvain
Administrateur
stars7.png
Dieu Supreme


avatar
Hors ligne

Nombre de posts: 1576
Inscrit(e) le: 20 novembre 2004
Imprimer Permalien mardi 28 mars 2017 à 08:42  

Bonjour Florent,

les scripts de création d'une base vierge conforme à la prochaine version est disponible :

http://visual.timetabling.free.fr/MISES-A-JOUR/VT_BETA/BDVT-VIERGE.sql

Il me semble que beaucoup de données aveient été impportée dans ta base sans passer par VT. C'est surement cela qui pose pb.

Si tu rencontres encore des pbs fais-moi signe !

Sylvain

Édité 1 fois - Dernière édition: 28/03/2017 à 08:42 Par sylvain.


visual timetabler


E-mail Anti-spam


 
 
 
 
 
 
fperciot
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 21
Inscrit(e) le: 08 septembre 2016
Imprimer Permalien mardi 28 mars 2017 à 23:19  

Bonsoir Sylvain,
Petit point d'avancement (qui je l'espère puisse faire avancer le Schmilblick).
Le fait d'avoir le script de création m'a plus qu'aider pour avancer.
J'ai pu créer une base vierge et y injecter mes ancienne données (expurgées pour la préparation de la base 2017/201 smiley s8g29g.gif .
VT se lance bien avec les différents comptes.
Par contre, il a fallu (pour solutionner le problème que nous rencontrions avec Laurent : Mysql Error code (1602) : Duplicate entry 0 for key 'PRIMARY' smiley sg3bgg29g.gif que je mette des AUTO_INCREMENT pour certaines clés primaires de certaines tables (comme c'était le cas dans l'ancienne version de la base) :


Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. ALTER TABLE  `absences_justifications` 
  5. MODIFY `codeJustification` int(11) NOT NULL AUTO_INCREMENT;
  6.  
  7. ALTER TABLE  `absences_profs` 
  8. MODIFY `codeAbsence` int(11) NOT NULL AUTO_INCREMENT;
  9.  
  10. ALTER TABLE  `absences_etudiants` 
  11. MODIFY `codeAbsence` int(11) NOT NULL AUTO_INCREMENT;
  12.  
  13. ALTER TABLE `cnu`
  14. MODIFY  `codeCNU` AUTO_INCREMENT;
  15.   
  16. ALTER TABLE `composantes`
  17. MODIFY  `codeComposante` int(11) NOT NULL AUTO_INCREMENT;
  18.  
  19. ALTER TABLE `diplomes`
  20. MODIFY  `codeDiplome` int(11) NOT NULL AUTO_INCREMENT;
  21.  
  22. ALTER TABLE `disciplines`
  23. MODIFY `codeDiscipline`int(11) NOT NULL AUTO_INCREMENT;
  24.  
  25. ALTER TABLE `enseignements`
  26. MODIFY `codeEnseignement` int(11) NOT NULL AUTO_INCREMENT;
  27.  
  28. ALTER TABLE `filieres`
  29. MODIFY `codeFiliere` int(11) NOT NULL AUTO_INCREMENT;
  30.  
  31. ALTER TABLE `grades`
  32. MODIFY `codeGrade` int(11) NOT NULL AUTO_INCREMENT;
  33.  
  34. ALTER TABLE `lignes_budgetaires`
  35. MODIFY `codeLigneBudgetaire` int(11) NOT NULL AUTO_INCREMENT;
  36.  
  37. ALTER TABLE `matieres`
  38. MODIFY `codeMatiere` int(11) NOT NULL AUTO_INCREMENT;
  39.  
  40. ALTER TABLE `niveaux`
  41. MODIFY `codeNiveau` int(11) NOT NULL AUTO_INCREMENT;
  42.  
  43. ALTER TABLE `reservations`
  44. MODIFY `codeReservation` int(11) NOT NULL AUTO_INCREMENT;
  45.  
  46. ALTER TABLE `ressources_etudiants`
  47. MODIFY `codeEtudiant` int(11) NOT NULL AUTO_INCREMENT;
  48.  
  49. ALTER TABLE `ressources_groupes`
  50. MODIFY `codeGroupe`  int(11) NOT NULL AUTO_INCREMENT;
  51.  
  52. ALTER TABLE `ressources_materiels`
  53. MODIFY `codeMateriel`  int(11) NOT NULL AUTO_INCREMENT;
  54.  
  55. ALTER TABLE `ressources_profs`
  56. MODIFY `codeProf` int(11) NOT NULL AUTO_INCREMENT;
  57.  
  58. ALTER TABLE `ressources_salles`
  59. MODIFY `codeSalle` int(11) NOT NULL AUTO_INCREMENT;
  60.  
  61. ALTER TABLE `seances`
  62. MODIFY `codeSeance` int(11) NOT NULL AUTO_INCREMENT;
  63.  
  64. ALTER TABLE `types_activites`
  65. MODIFY `codeTypeActivite` int(11) NOT NULL AUTO_INCREMENT;
  66.  
  67. ALTER TABLE `types_materiels`
  68. MODIFY `codeTypeMateriel` int(11) NOT NULL AUTO_INCREMENT;
  69.  
  70. ALTER TABLE `types_salles`
  71. MODIFY `codeTypeSalle` int(11) NOT NULL AUTO_INCREMENT;
  72.  
  73. ALTER TABLE `utilisateurs`
  74. MODIFY `codeUtilisateur` int(11) NOT NULL AUTO_INCREMENT;
  75.  
  76. ALTER TABLE `utilisateurs_actions`
  77. MODIFY `codeAction` int(11) NOT NULL AUTO_INCREMENT;
  78.  
  79. ALTER TABLE `utilisateurs_domaines`
  80. MODIFY `codeDomaine`  int(11) NOT NULL AUTO_INCREMENT;
  81.  
  82. ALTER TABLE `utilisateurs_filtrages`
  83. MODIFY `codeFiltrage` int(11) NOT NULL AUTO_INCREMENT;
  84.  
  85. ALTER TABLE `utilisateurs_numeros_commandes`
  86. MODIFY `numeroCommande` int(11) NOT NULL AUTO_INCREMENT;
  87.  
  88. ALTER TABLE `zones_salles`
  89. MODIFY `codeZoneSalle` int(11) NOT NULL AUTO_INCREMENT;
  90.  
  91. #####!!!#####
  92. ?>


MAIS (car il y a forcement un mais) je rencontre le problème suivant :

Qaund je crée n'importe quelle ressource , lorsque l'on omet de remplir un des champs dans sa définition, il semble que quand ce champs fait partie des nouvelle contraintes d'intégrité (et que celle-ci ne semble pas être gérée en natif par l'application), il y a un message d'erreur SQL.
Voici une copie d'écran pour illustrer mon propos lorsque j'ai tenté d'ajouter une salle en omettant de remplir le champs "Zone" et en cliquant sue "Ajouter" :
image

Comme le message d'erreur n'est pas des plus explicite, est-ce que tu pourrais mettre (comme c'est le cas lorsque l'on omet une des autres champs) un message que puisse comprendre un utilisateur lambda ?

Bien évidement, si mes propos ne paraissent pas suffisamment clairs, ne pas hésiter à demander des compléments d'information.
Merci pour tout ce que tu fais.
Bien à toi,
Florent P.




 
 
 
 
 
 
Ψsylvain
Administrateur
stars7.png
Dieu Supreme


avatar
Hors ligne

Nombre de posts: 1576
Inscrit(e) le: 20 novembre 2004
Imprimer Permalien mercredi 29 mars 2017 à 07:39  

Bonjour Florent,

C'est bizarre ces autoincrement qui ont disparu de toutes les tables ???
Je viens de vérifier sur ma base de travail : ils sont présents !

Une erreur de manup de ma part lors de l'export de la structure ???

Je corrige

Édité 1 fois - Dernière édition: 29/03/2017 à 07:39 Par sylvain.


visual timetabler


E-mail Anti-spam


 
 
 
 
 
 
fperciot
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 21
Inscrit(e) le: 08 septembre 2016
Imprimer Permalien mercredi 29 mars 2017 à 23:48  

Bonsoir Sylvain,
Je crois comprendre (plus ou moins) ce qu'il se passe avec les codes erreurs SQL liés aux contraintes d'intégrité.

Je m'explique en prenant un exemple.

Je parts du postulat que je démarre d'une base vierge créée avec le script que Sylvain a fourni dans ce post et dans laquelle j'ai réinjecté une bonne partie de ce que j'avais dans la précédente base hormis tous ce qui concerne les séances/réservations (comme expliqué dans la procédure de préparation d'une nouvelle année).

Lorsque l'on ajoute un nouveau diplome, on renseigne les différents champs dans VT_reseau (en omettant de remplir le champs responsable), or , dans la table diplome, il y a (par exemple) le champs codeResponsable pour lesquels la valeur par défaut est 0.
Or, pour ce champs, il y a une contrainte d'intégrité avec le champs codeprof de la table ressources_profs.
Donc quand VT_reseau tente d'enregistrer et que dans la table ressources_profs il n'y a aucune occurrence ayant comme codeprof = 0, il y a message d'erreur.
Le seul moyen que j'ai trouvé pour résoudre ce problème est donc ce créer "artificiellement" une occurrence "bidon" dans la table ressources_profs ayant pour codeprof = 0.
Et j'ai ce type de problèmatique pour nombre ce contraintes d'intégrité (et ce problème est d'autant plus aggravé lorsque la valeur par défaut est égale à 0 (par exemple) et que la contrainte d'intégrité porte sur un champs d'une table dont la valeur est en AUTO_INCREMENT avec une valeur initiale de ce dernier > à 0.

Il se peut que je ne prenne pas le problème par le bon bout, mais j'avoue ne pas savoir quoi faire d'autre.
Si tu pouvais apporter une solution à ce délicat problème, je t'en remercie d'avance,
Bien à toi,
Florent P.




 
 
 
 
 
 
Ψsylvain
Administrateur
stars7.png
Dieu Supreme


avatar
Hors ligne

Nombre de posts: 1576
Inscrit(e) le: 20 novembre 2004
Imprimer Permalien jeudi 30 mars 2017 à 11:31  

Bonjour Florent,

Je vais retravailler la structure et peut-être alléger certaines contraintes.
Mais je pense qu'il y a moyen de respecter toutes les contraintes.

Dans l'exemple que tu donnes, plutôt que créer un prof bidon qui sert à contourner la contrainte liée au responsable dans la table des diplômes, pourquoi ne pas commencer par importer les profs et ensuite importer les diplômes en renseignant correctement le champ codeResponsable.

Je sais, tu vas me dire que tu ne connais pas le responsable de chaque diplôme ... et c'est pour cela que je vais alléger certaines contraintes.

Les contraintes ont été ajoutées surtout pour éviter les pbs lors des imports des données effectués en dehors de VT. Ces contraintes sont intégrées dans VT : elles sont donc inutiles si on ne travaille qu'avec VT.

Au passage j'ai redéposé les scripts mis à jour en intégrant les AUTOINCREMENT et en compétant certaines valeurs par défaut (champs DELETED, COMMENTAIRE, IDENTIFIANT, ...)

Sylvain




Dans les scripts, j'ai mis en commentaire les contraintes que j'ai relaxées.

Au passage, tu remarqueras que les contraintes que j'ai posées sont toutes de type restrictives. Il y a d'autres possibilités avec mysql. Par exemple il est possible de propager les modifications.

Je ne l'ai pas exploité ces autres possibilités puisque VT le fait lui-même dans sa gestion de mémoire interne.


Une chose très curieuse : j'ai créé le fichier de script à partir d'une base vierge à jour (un export de la structure).
Quand j'essaie de recréer la base avec ces mêmes scripts, j'ai une erreur car le nom de certaines contraintes est le même que celui de certaines clefs.

Par exemple il y a une clef "seances_groupes_ibfk_1" dans la table "seances_groupes" et il a une contrainte de même nom sur cette table.
J'ai donc renommé toutes les contraintes en remplaçant "_ibfk_" par "_consfk_" et la ça passe !!!

Conclusion : l'import d'un export effectué avec la même version de mysql ne fonctionne pas toujours : bizarre ! smiley sg3agjapg3ag.gif

Je redéposerai sur le site ce soir.
Édité 2 fois - Dernière édition: 30/03/2017 à 08:16 Par sylvain.


visual timetabler


E-mail Anti-spam


 
 
 
 
 
 
fperciot
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 21
Inscrit(e) le: 08 septembre 2016
Imprimer Permalien vendredi 7 avril 2017 à 14:24  

Bonsoir Sylvain,
Merci pour l'allègement des contraintes.
J'ai refait des tests et je n'ai plus que 2 erreurs (que j'ai corrigées en insérant des occurrences avec des clés à valeur = 0 par les requêtes suivantes) :

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. INSERT INTO `cnu` VALUES (0, 0, 'CNU INCONNUE', '2014-09-12 15:53:35', '2010-05-22 06:23:43', 0, 1, '', 0, 0);
  5. SET @Max1 = (select MAX(`codeCNU`) FROM `cnu`);
  6. UPDATE `cnu` SET `codeCNU` = '0' where `codeCNU` = @Max1;
  7.  
  8. INSERT INTO `niveaux` VALUES ('0', '16777215', '0', 'AUCUN NIVEAU', 'AUCUN NIVEAU', '2017-03-30 22:17:54', '2017-03-30 22:17:54', '0', '90005', '', '', '1');
  9. SET @Max2 = (select MAX(`codeNiveau`) FROM `niveaux`);
  10. UPDATE `niveaux` SET `codeNiveau` = '0' where `codeNiveau` = @Max2;
  11.  
  12. INSERT INTO `disciplines` VALUES (NULL , '16711680', '16777215', 'DISCIPLINE', 'DISCIPLINE', '2017-03-29 13:51:40', '2017-03-29 13:51:14', '0', '3000', '', 'DISCIPLINE');
  13. SET @Max3 = (select MAX(`codeDiscipline`) FROM `disciplines`);
  14. UPDATE `disciplines` SET `codeDiscipline` = '0' WHERE `codeDiscipline` = @Max3;
  15.  
  16. #####!!!#####
  17. ?>


Je ne pense pas que cela perturbe outre mesure VT en lui-même.

Juste un petit aparté, les erreurs que je rencontre ne se manifestent pas à l'importation de mes données dans la base, ni lorsque je lance VT_reseau, pas plus que quand je modifie une donnée existante (toujours depuis VT_resau), mais uniquement lorsque je pars d'une donnée existante, que je la modifie et que je clique sur le bouton "Ajouter".

De plus, chez nous, seuls les "profs" sont "importés" dans VT (depuis Harpège, si je ne me trompe pas).

Maintenant, je crois qu'avec tes dernières modification des contraintes plus les quelques ajouts listés ci-dessus, j'ai une base "quasi propre" et opérationnelle.
En tous cas je te remercie pour tout ce que tu fais pour m'aider et tout le temps que tu passes sur mes problématiques.
Bien à toi,
Florent P.

P.S.: dans le BDVT-VIERGE.sql, les AUTO_INCREMENT n'étaient plus présents sur un certain nombre de tables (je les ai rajouté mais je ne me souviens plus exactement lesquelles, je pourrais rte les lister si besoin, à ta demande)



Bonjour Sylvain,
Suite de mes tests :
mes tables sont maintenant OK (d'après les divers tests que j'ai effectué avec mes utilisateurs).
Mais, j'ai un gros soucis d'import de séances (pour les enseignements cela semble bien fonctionner).
J'exporte mes séances de certains groupes (comme cela a été expliqué dans un post sur le forum
Citation :
exporter les séances des groupes : Groupes / Séances / Détail complet des séances; sélectionner les groupes; sélectionner la période (donc tout pour l'année complète); Utiliser la commande Sauver : toutes les séances des groupes sélectionnés seront sauvées dans un fichier CSV


Je les modifie ensuite dans un tableur pour mettre les bonnes dates, etc ...
Ensuite lorsque je les importe dans VT (version beta 09/01/2017) tout semble bien se passer (voir image ci-dessous :
image
Il me marque bien "Nouvelle séance importée", mais dans la table séance, je n'ai rien du tout.
Quand je les mets "à la main", pas de soucis, pas de conflits, les séances se placent bien (je me suis basé sur les données du CSV dont je me sers pour importer, donc les choses sont identiques).
P.S.: je me sers du login d'une opératrice de saisie d'EDT pour faire cet import, mais même avec mon login "administrateur" j'ai le même résultat.
P.S.S.: j'ai testé avec la version de VT du 01/12/2016 et ça fonctionne bien avec.
Est-ce un bug ou bien il y a quelque chose que je fais mal ?
Merci par avance pour ton aide,
Cdt,
Florent P.
(si tu en a besoin, je peux mettre à ta disposition la base et le fichier d'import en MP)
Édité 3 fois - Dernière édition: 07/04/2017 à 14:25 Par fperciot.




 
 
 
 
Version beta du 09/01/17  [30 réponses]