Afficher la valeur d'un champ d'une couche active

On peut choisir d'afficher la valeur d'un champ d'une couche active à l'endroit d'un clic.

Ici on propose de renvoyer la valeur du champ NOM_COMM

La syntaxe est de type (action de type Python) :

QtGui.QMessageBox.information(None, "Identification", "[% "NOM_COMM" %]")

Le résultat s'affiche dans une boîte des résultats renvoyés par l'action :

Afficher la valeur d'un champ

En cliquant sur OK la fenêtre de résultat se referme mais l'action est toujours active tant qu'une autre action n'est pas choisie. On peut donc continuer à utiliser cette action pour consulter les valeurs du même champ en d'autres endroits de la fenêtre cartographique.

On peut aussi afficher la valeur de plusieurs champs en organisant la présentation du résultat sur plusieurs lignes :

La syntaxe de l'action est la suivante :

QtGui.QMessageBox.information(None, "INFORMATIONS", " COMMUNE : [% NOM_COMM %] \n CODE INSEE : [% INSEE_COMM %] \n POPULATION : [% POPULATION %] habitants")

Boîte de dialogue Propriétes - Onglet Actions

Une fois l'action lancée, un clic dans une commune fait apparaître la boîte de résultat suivante :

Résultat de l'action

ExempleAction permettant d'afficher le parcellaire d'une commune à partir du service INSPIRE pour le cadastre

Le service WMS INSPIRE pour le cadastre est disponible sur Internet.

Il est possible de créer une action qui utilisera une couche de commune pour télécharger directement le parcellaire.

Par exemple si on utilise la couche COMMUNE de la BdCarto, le champ NOM_COMM donne le nom de la commune et le champ INSEE_COMM le numero INSEE.

L'action python suivante :

from qgis.core import *

import qgis.utils

iface=qgis.utils.iface

uri=u"crs=EPSG:2154&dpiMode=7&featureCount=10&format=image/png&layers=CP.CadastralParcel&styles=DEFAUT&url=http://inspire.cadastre.gouv.fr/scpc/[% "INSEE_COMM" %].wms?"

nom= u"WMS_cadastre_[% "NOM_COMM" %]".replace("'", ' ')

macouche=iface.addRasterLayer(uri, nom, 'wms')

permettra de charge le parcellaire (qui s'affiche si le zoom est suffisant).

« (remerciement à F. MUZZOLON DTT63 pour cette astuce). »