Message posté par : Pascal PLUVINET
----------------------------------------
Bonjour,
J'ai découvert récemment qu'on peut personnaliser la vue cartographique avec des
expressions. (Vue/Décorations...)
Je souhaiterai, grâce à une expression, afficher dans une décoration "étiquette de
titre" les attributs d'un champ "MYCOLUMN" pour les entités
sélectionnées d'une couche "MYLAYER". Si plusieurs entités sont
sélectionnées, l'expression renvoie les attributs de chaque entité avec un saut de
ligne.
J'ai écris l'expression suivante, qui fonctionne mais qui est très lente car en
effet, la couche, sur laquelle je travaille, contient plusieurs centaines de milliers de
polygones :
-----------------
Code :
[% aggregate(
layer:= 'MYLAYER_3aa45b0e_0e3e_4599_88dd_174b921b12ba',
aggregate:='concatenate_unique',
expression:="MYCOLUMN" ,
concatenator:= '\n',
filter:=is_selected('MYLAYER_3aa45b0e_0e3e_4599_88dd_174b921b12ba',
$currentfeature
)
)
%]
-----------------
C'est d'ailleurs assez rapide et réactifs lorsque je filtre la couche sur quelques
milliers de polygones, par un simple filtre sur la couche.
Est-ce qu'il y aurait un autre moyen pour rendre cette expression plus rapide ?
(A savoir que je n'affiche pas vraiment l'attribut mais le résultat d'un petit
CASE WHEN très simple basé sur 2-3 colonnes)
Merci d'avance pour vos éventuels retours,
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=358766#p358766
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net