[QGIS-it-user] Copiare dal padre
Giovanni Talpone
giovanni.talpone a gmail.com
Mer 3 Apr 2024 03:49:59 PDT
Ottimo! Funziona anche senza filtro (perché le città erano già assegnate
correttamente alle regioni). Lo segnalerei come esempio nel manuale perché
il costrutto " aggregate:='Max', expression:=" " non è esattamente ovvio
per un principiante.
Grazie mille
Giovanni
On Wed, 3 Apr 2024 at 09:12, Alberto Poggi <albpoggi a gmail.com> wrote:
> Potresti provare a utilizzare le funzioni aggregate e intersects di Qgis.
> Io la utilizzo per far ereditare in automatico il valore di un campo testo
> (il nome del comune) da un layer poligono (il confine del comune) in campi
> testo (sempre il nome del comune) presente in altri layer (solitamente
> layer puntuali). Ma può essere utilizzata anche al volo e una sola volta
> inserendola nel calcolatore di campi di Qgis.
> La funzione è questa:
>
> aggregate(layer:='nome del layer da cui prendo il valore (nel tuo caso
> Regioni)', aggregate:='Max', expression:="nome del campo con il valore da
> copiare (nel tuo caso name)", filter:=intersects( $geometry,
> geometry(@parent))).
>
> In pratica verifica che la geometria puntuale ricada all'interno della
> geometria poligonale e, se vero, inserisce il valore desiderato nel campo
> di riferimento della geometria puntuale.
> Per prima cosa seleziona le geometrie che vuoi aggiornare. Poi apri il
> calcolatore di campi (il simbolo del pallottoliere) e inserisci la funzione
> opportunamente aggiornata con il nome dei campi dei tuoi layer nella
> finestra "espressione". Metti la spunta su "aggiorna campo esistente" e
> seleziona il campo di destinazione dei dati (nel tuo caso Regione).
> Attenzione a questa fase che è molto delicata perchè poi, quando lancerai
> la funzione, verranno sovrascritti i dati di quel campo (Regione) di tutti
> gli oggetti selezionati in precedenza.
> Quindi, conclusa la funzione, prima di salvare i dati controlla che nella
> tabella ci siano i dati desiderati. Salva tutto e il gioco è fatto.
>
> Ho preso questa funzione, se non ricordo male, dai post del blog di Totò
> Fiandaca (https://pigrecoinfinito.com/) che ringrazio tantissimo perchè
> fornisce moltissime informazioni sull'utilizzo delle funzionalità più
> avanzate di Qgis.
>
> Alberto Poggi
>
>
>
> ---------- Forwarded message ---------
> Da: <qgis-it-user-request a lists.osgeo.org>
> Date: mar 2 apr 2024 alle ore 21:03
> Subject: Digest di QGIS-it-user, Volume 101, Numero 1
> To: <qgis-it-user a lists.osgeo.org>
>
>
> Invia le richieste di iscrizione alla lista QGIS-it-user all'indirizzo
> qgis-it-user a lists.osgeo.org
>
> Per iscriverti o cancellarti attraverso il web, visita
> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
> oppure, via email, manda un messaggio con oggetto `help' all'indirizzo
> qgis-it-user-request a lists.osgeo.org
>
> Puoi contattare la persona che gestisce la lista all'indirizzo
> qgis-it-user-owner a lists.osgeo.org
>
> Se rispondi a questo messaggio, per favore edita la linea dell'oggetto
> in modo che sia più utile di un semplice "Re: Contenuti del digest
> della lista QGIS-it-user..."
>
>
> Argomenti del Giorno:
>
> 1. Copiare dal padre (Giovanni Talpone)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 2 Apr 2024 14:20:47 +0200
> From: Giovanni Talpone <giovanni.talpone a gmail.com>
> To: qgis-it-user a lists.osgeo.org
> Subject: [QGIS-it-user] Copiare dal padre
> Message-ID:
> <
> CAP31Rhy+0ztB2gOgPK54a7_408SiN2n_efLu7f1jvoXS7+A3cA a mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Ciao, ho girato su molti siti ma non trovo la soluzione per un problema
> apparentemente banale.
> Ho un layer "Regioni" con un campo "name" che contiene per esempio
> 'Lombardia'
> Ho un layer figlio "Città" con un campo "Regione" e vorrei un'espressione
> tipo:
> copy_parent("nome_campo"). L'unica espressione che ho trovato è aggregate
> che però lavora sui figli, non sul padre. @parent non funziona in questo
> caso. C'è l'espressione current_parent_value però è riservata a utenti
> molto più bravi di me.
> Come si fa?
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <
> http://lists.osgeo.org/pipermail/qgis-it-user/attachments/20240402/fc3e22d0/attachment-0001.htm
> >
>
> ------------------------------
>
> Subject: Chiusura del digest
>
> _______________________________________________
> QGIS-it-user mailing list
> QGIS-it-user a lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
>
>
> ------------------------------
>
> Fine di Digest di QGIS-it-user, Volume 101, Numero 1
> ****************************************************
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.osgeo.org/pipermail/qgis-it-user/attachments/20240403/f3f7ddc7/attachment.htm>
Maggiori informazioni sulla lista
QGIS-it-user