#1 Aujourd'hui 16:59
QGIS: Tableau de synthese dans l Atlas
Bonjour,
J'ai inséré une table attributaire dans la mise en page d'un atlas.
Ma couche de couverture "enveloppe_urbaine"
Ma couche de données "Terrains densifiables"
Je souhaite faire apparaitre dans le tableau :
- 2 champs ("vocation" et "type")
- 3 données agrégées (surface, nombre de logements, nombre de terrains)
Ces trois données doivent correspondre au croisement des objets de ma table "Terrains densifiables" localisés à l’intérieur de l'entité courante de l'atlas
J'ai essayé plusieurs formules qui ne donnent pas les réponses que j'attends :
1/ avec la couche "Terrains densifiables" en sélectionnant les attributs suivants :
- champ "vocation"
- champ "densification"
- pour les données agrégées (prenons l'exemple du nombre de logements dont le champ se nomme Nbre_log) :
Code:
aggregate( layer:='ma_couche_Terrains densifiables_avec la suite de chiffres et lettes ', aggregate:='sum', expression:="Nbre_log", filter:=contains( @atlas_geometry,@geometry ))
- j'ai bien coché : "ne montrer que les entité intersectant l'entité atlas" et "supprimer les lignes en double de la table"
Les sommes des 3 colonnes ne correspondent pas à la somme des objets qui intersectent l'entité atlas, cf capture d'écran methode_1 : https://geoscope.fr/nextcloud/index.php … yddSejqzKx
2/ en ajoutant au filtre mes 2 champs pour que ne soient sommés que les objets qui répondent au 2 critères "
Code:
aggregate( layer:=Terrains_densifiables_1c5b1e2b_be89_44c0_979f_9ba22a8f3eff', aggregate:='sum', expression:="Nbre_log", filter:= "Vocation" || "Type" and contains( @atlas_geometry,@geometry ))
Cela ne marche pas non plus :-(
J'ai encore de gros progrès à faire pour écrire correctement des expressions... aussi, quelqu'un peut-il me dépatouiller ? (dire que c'est si facile à faire avec libre office et les tables dynamique!).
Merci.
Géoscope
Hors ligne


