Le particelle catastali, spesso, hanno più Ditte intestatarie. In questo blog post descriverò una soluzione per impostare il vettore di copertura di un atlante in modo da stampare, per ogni Ditta, solo le particelle intestate.
Dati di input due layer distinti: proprietari (una semplice tabella senza geometria, con nro_plla-fg come chiave univoca) e particelle (un vettore poligonale con nro_plla come chiave univoca).

Sotto le tabelle degli attributi dei due layer:
Il layer di copertura dell’atlante deve essere un vettore poligonale, in particolare deve essere un vettore multi-poligonale che raccolga, per ogni Ditta, tutte le particelle in cui è proprietario, la query che materializza il vettore è la seguente (virtual layer):

SELECT pr.ditta,
group_concat(pr."nro_plla"||'-'||pr.foglio) as elenco_plle,
count(*) as nro,
st_collect(pl.geometry) as geom
FROM particelle pl, proprietari pr
WHERE pl."nro_plla"||'-'||pl.foglio = pr."nro_plla"||'-'||pr.foglio
GROUP BY 1
Quando creiamo l’atlante, usiamo il Virtual Layer appena creato come layer di copertura:
Per visualizzare SOLO le particelle della Ditta corrente, occorre configurare le Impostazioni di Ritaglio (>=QGIS 3.16) evidenziate nello screenshot di sotto:
Ecco il risultato:
NOTE FINALI: L’idea di creare questo tipo di atlante è nata grazie ad un post su Facebook. Ho realizzato questo blog post pensando sia utile a più persone. È solo una soluzione possibile, esistono sicuramente altri modi per risolvere l’esigenza.
RIFERIMENTI
- QGIS : https://www.qgis.org/it/site/
- Facebook : https://www.facebook.com/groups/GisItalia/posts/10159696837456385/
Dati e progetto
Se il blog post vi è piaciuto cliccate su ‘Mi piace’, grazie!!!
if you liked the blog post click on ‘Like’, thank you !!!
Ciao Salvatore! fantastico!
secondo te è fattibile avendo tutti i dati in un unico layer? cioè mi spiego…io ho il mio layer ha un campo “proprietario” e per un proprietario ci sono più record (geometrie), vorrei usare questo layer senza doverne creare altri (al momento ho risolto con un dissolve) per creare un atlante in cui tutte le geometrie dello stesso proprietario appaiono nella stessa pagina…
grazie mille!
"Mi piace"Piace a 1 persona
Ciao Alberto,
secondo me sì e la query da utilizzare sarebbe più semplice, tipo questa:
SELECT IDENT,
group_concat(cod_int) as elenco_plle,
count(*) as nro,
st_collect(geometry) as geom
FROM dati_test_atlante
GROUP BY 1
ciao
"Mi piace"Piace a 1 persona
grazie!
"Mi piace"Piace a 1 persona