Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

erreur Python lors de l'ajout d'une couche via un WMS - plugin v2.0.0-beta4 QGIS 3.4.9-Madeira (Windows-10-10.0.18362) #272

Closed
SimonSAMPERE opened this issue Oct 14, 2019 · 1 comment · Fixed by #282
Assignees
Labels
bug Problème par rapport au fonctionenment attendu
Milestone

Comments

@SimonSAMPERE
Copy link
Collaborator

log_isogeo_plugin.log

Environnement

  • Version de QGIS : 3.4.9
  • Installation de QGIS : installateur réseau OSGeo4W.
  • Système d'exploitation : Windows-10
  • Architecture processeur : 64 bits
  • Utilisation de l'application "Plugin QGIS - Dév"

Reproduire

  1. Lancer QGIS
  2. Ouvrir le plugin Isogeo via l'icône
  3. Afficher le résultat
  4. Ajouter une couche à partir d'un service WMS invalide
  5. L'erreur Python suivante est signalée :
File "C:/USERNAME/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\isogeo_search_engine_dev\modules\layer\add_layer.py", line 901, in adding
).format(error_msg),
IndexError: tuple index out of range  

image

@SimonSAMPERE SimonSAMPERE added the bug Problème par rapport au fonctionenment attendu label Oct 14, 2019
@SimonSAMPERE SimonSAMPERE added this to the version 2.0.0-beta5 milestone Oct 14, 2019
@SimonSAMPERE SimonSAMPERE self-assigned this Oct 14, 2019
@SimonSAMPERE
Copy link
Collaborator Author

Contexte

L'utilisateur ajoute une couche via un service ESRI ou OGC (en l'occurence via à WMS) invalide auquel QGIS ne peut accéder.
Dans ce cas, le code prévoit d'afficher une fenêtre pour indiquer à l'utilisateur que le service n'est pas valide. Le message d'erreur de QGIS est récupéré pour être affiché dans la fenêtre.
A cause du bug, une erreur Python est signalée par QGIS et la fenêtre n'est pas affichée par le plugin.

Cause du bug

Le bug est dû à l'utilisation de la fonction native format(...).
Elle est utilisée pour insérer 1 seul élément (l'erreur de QGIS due à l'invalidité du service) au sein d'une chaîne de caractères (celle qui est affichée dans la fenêtre destinée à informer l'utilisateur). La chaîne de caractères en français renvoyée par la traduction contient 2 {} au lieu d'un seul. Le problème vient donc des fichiers de traduction.

Solution

Il faut corriger les fichiers de traduction. Le fichier modules/layer/add_layer.py contient 6 chaînes de caractères dont l'équivalent français n'est pas valide (contient 2 {} au lieu d'un seul)

Résultat

Lorsque l'utilisateur tente d'ajouter une couche à partir d'un service invalide, la fenêtre ci-dessous s'affiche à la place du message d'erreur Python indiqué par QGIS avant la résolution du bug.

image

SimonSAMPERE added a commit that referenced this issue Oct 14, 2019
update translation files
SimonSAMPERE added a commit that referenced this issue Oct 22, 2019
close #272 by updating translation files
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Problème par rapport au fonctionenment attendu
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant