Introduzione¶
Il tutorial è basato su un progetto QGIS dedicato alla gestione di un layer rappresentante una serie di edifici dislocati sul territorio.
Oltre agli aspetti geografici il progetto prevede la gestione di numerosi e diverisficati attributi e di eventauli interventi di manutezione tramite una relazione di tipo 1:n
Tramite questo tutorial sarà possibile:
personalizzare i vari aspetti grafici-funzionali del progetto demo
pubblicare il progetto come servizio WebGis
creare ricerche personalizzate
attivare la funzionalità di editing personalizzando form e widget associati
Scaricare i dati di demo¶
Il turorial è basata su dati e progetto QGIS 3.10 LTR project sacaricabili da questo link.
Il file .zip contiene una directory G3W-SUITE con due sub-directory:
projects
: contenente un progetto QGIS (buildings_management.qgz
) già ottimizzato per il tutorialproject_data/spatialite
: contenente un DB SpatiaLite con i dati di base (build_management.sqlite
)
All”interno del DB SpatiaLite build_management.sqlite
sono presenti i seguenti layer:
buildings
(layer poligonale): layer di riferimento per gli aspetti di editingmaintenance_works
(tabella alfanumerica): con gli interventi di manutenzioni associati ai singoli edificipark
(layer poligonale)roads
(layer lineare): una semplice rete stradalework_areas
(layer poligonale): con la perimetrazione di aree di lavoro da utilizzare per definire eventuali geo-constraints
IMPORTANTE: per il corretto funzionamento della demo, una copia dei dati geografici è presente sul server. La modifica dei dati potrebbe ripercuotersi sulla pubblicazione del progetto
Il progetto (realizzato con QGIS LTR 3.10) prevede:
una vestizione categorizzata dal
layer buildings
basata sul campo categoricotype
la presenza di una relazione 1:n tra il layer
buildings
e la tabella alfanumericamaintenance_works
query form prestutturati per il layer
buildings
e la tabellamaintenance_works
widget di editing predefiniti per i campi dei due layer principali:
buildings
emaintenance_works
Due
composizioni di stampa
in A4 e A3
Modificare il titolo del progetto QGIS¶
Il sistema di pubblicazione prevede l”utilizzo del titolo del progetto come identificatore univoco del servizio WebGis
*Per questo, prima di pubblicare i progetto sarà quindi necessario modificare il titolo associato al progetto base (Progetto -> Proprietà... - Sessione: Generale
)
Accedere al servizio on line¶
Per pubblicare il progetto è possibile accedere all”applicazione G3W-SUITE di test tramite il seguente URL: https://v30.g3wsuite.it
Per accedere al Pannello di Amministrazione è necesario loggarsi tramite le seguenti credenziali:
user:
demo
password:
G3wsuite!
In caso di problemi di login segnalaci il problema ad info@gis3w.it
Pubblicare il progetto QGIS come servizio WebGis¶
In seguito ad autenticazione sarà possibile accedere alla Sessione di Amministrazione
e visualizzare la Dashboard.
Nella Dashboard sarà presente il menù per l”accesso ai Gruppi Cartografici di competenza del vostro utente e i menù relativi ad ulteriori moduli non attivi in questa demo.
Clicca sulla voce Mostra
nella casella celeste Gruppi per accedere all”elenco dei Gruppi Cartografici disponibili.
Accedi all”elenco dei webgis presenti nel Gruppo Cartografico G3W-SUITE Demo
facendo click sul numero di progetto riportato.
Ora clicca sul pulsante per pubblicare il tuo progetto QGIS.
Compilate il form definendo i vari aspetti da associare al servizio WebGis in pubblicazione:
Progetto QGIS¶
File QGIS
*: caricare il progetto cartografico di QGIS da pubblicare (file .qgz o .qgs)
ACL Users¶
Gestione poteri di accesso e gestione
Utenti Viewers
: si definiscono i singoli utenti (Viewers) che hanno le credenziali per visualizzare il servizio WebGis. Scegliendo l”utente anonimo (AnonymusUser) il gruppo sarà ad accesso liberoGruppi di utenti Viewer
: si definiscono i gruppi di utenti (Viewer) he hanno le credenziali per visualizzare il contenuto del servizio.
BaseLayer¶
In questa sessione si va a definire quale base layer
deve essere attivo all”avvio.
La scelta è limitata alla lista degli strati di base attivati per il gruppo cartografico nel quale si lavora.
E” possibile anche non definire nessun strato di base attivo all”avvio.
Descrizione¶
Titolo pubblico
: Titolo da associare al progetto e visualizzato sull”header del client.Se lasciato vuoto verrà utilizzato il titolo associato al progetto QGIS o, in mancanza di questo, il nome del file di progettoDescrizione
: descrizione libera del progetto che apparirà a livello del portale pubblico.Thumbnail (Logo)
: logo da associare al progetto. Tale immagine sarà visibile in associazione con il progettoURL alias
: E” possibile impostare un alias per la parte finale dell”URL della mappa.
ATTENZIONE: contenuti segnati con asetrisco sono obbligatori
Compilati i campi di interesse si clicca sul tasto Salva
per confermere la pubblicazione
Se la pubblicazione è andata a buon fine il progetto QGIS apparirà nell”elelnco dei progetti presenti nel Gruppo Cartografico
Cliccando sull”icona Visualizza mappa
si accederà al servizo WebGis in consultazione.
Aggionare il servizo WebGis pubblicato¶
Se volete modificare alcuni aspetti grafico-funzionali del vostro servizio WebGis, modificate il vostro progetto QGIS e aggiornate il servizio WebGis cliccando sull”icona Modifica
Nel form visualizzato ricaricate il progetto QGIS con le vostre modifiche e cliccate sul tasto Salva
Attivazione funzioni aggiuntive¶
Una volta che il tuo progetto è stato pubblicato, puoi accedere all”elenco dei widget e funzioni aggiuntive per arricchire il tuo servizio WebGis.
Gestione widget¶
Per accedere alla gestione delle funzioni aggiuntive cliccate sull”icona Lista Layers
a livello del vostro progetto QGIS
La nuova sessione mostrerà la lista dei layer presenti nel progetto QGIS pubblicato
Accanto a ciascun livello sono presenti una serie di icone e caselle di controllo:
Cache del layer: ti permette di attivare e gestire la cache del layer
Editing layer: mostra se la funzione di modifica online è attiva sul layer e ti permette di attivarlo e definirlo
Lista dei widget: mostra quanti widget (ad es. ricerche) sono associati a questo livello e ti permette di attivarne di nuovi
No legend: consente di definire se il layer deve o meno essere presente nella legendadel client Web
Scarica come shp: consente il download del layer in formato .shp
Scarica come xls: consente il download del layer in formato .xls
WMS esterno: per accelerare il caricamento, i layer WMS presenti in un progetto QGISsono gestiti direttamente da Django e non da QGIS-Server. Tuttavia,questo metodo impedisce l”applicazione di qualsiasi stile (ad es. livello di opacità)definito a livello di progetto. La scelta dell”opzione WMS esternasignifica che il layer WMS è gestito direttamente da QGIS-Server e quindipuò essere applicato lo stile associato.
Type: illustra il tipo di dato (WMS, PostGis, SpatiaLite, GDAL/OGR…)
WFS: una spunta mostra se il layer è pubblicato o meno come servizio WFS
Nome: nome del layer
Etichetta: alias del layer applicata a livello di progetto QGIS
Prova ad attivare le opzioni disponibili e verificare il risultato refreshando il servizio WebGis
Creazione strumenti di ricerca¶
Per creare uno strumento di ricerca disponibile a livello WebGis, selezionare il layer vettoriale su cui basarsi per creare lo strumento e fare clic sull”icona Elenco widget
Probabilmente verranno elencate Una serie di ricerche già realizzate per questo layer da altri utenti
E” possibile attivarle cliccnado sul check Collegato
Le ricerche elencate possono essere modificate, cancellate o scollegate usando lerelative icone.
Per creare una nuova ricerca, fai clic sul link blu Nuovo widget
Nel form è possibile definire:
Titolo del form
Tipo
: scegli l”opzioneCerca
- L”opzione Law non è attiva nella demoNome
: nome che utilizzerà G3W-SUITE per registrare internamente il widget di ricerca.
Configurazione generale delle ricerca e risultati
Titolo ricerca
: titolo che identifica la ricerca che diverrà disponibile nel pannello Ricerche dell”interfaccia WebGis
Impostazioni campi di ricerca
Campo
: campo su cui realizzare la ricercaWidget
: metodo di inserimento valore da ricercare InputBox: compilazione manuale SelectBox: valori mostrati tramite menù a tendina (solo per layer PostGis o SpatiaLite)Alias
: alias assegnato al campo che comparirà nel form di ricercaDescrizione
: descrizione assegnata al campoOperatore comparizione
: operatore di comparazione (=, <, >, ><, >=, <=, LIKE, ILIKE
) tramite qui verrà realizzata la query di ricerca. Gli operatori LIKE e ILIKE saranno disponibili solo per layer PostGis o SpatiaLiteDipendenza
: questo parametro (facoltativo) permette, solo nel caso di widget SelectBox, di elencare la lista dei valori di un campo filtrati in base al valore definito per i campi precedenti. Lo strumento permette, ad esempio, di mostrate, nel menù a tendina dedicato alla scelta delle particelle catstali, solo le particelle collegate al foglio scelto nell’opzione precedente. Tale funzione è disponibile solo per layer PostGis o SpatiaLite.
Il tasto verde Aggiungi
permette di aggiungere ulteriori campi per la costruzione della query di ricerca attualmente gestibili tramite il solo operatore AND.
Di seguito si riporta un esempio basato sui campi type
e volume
del layer buildings
Una volta compilato il form si clicca sul tasto OK
per salvare le impostazioni.
Salvate le impostazioni il widget realizzato comparirà nella lista dei Widget associati al layer.
Il widget risulterà già Collegato
e quindi disponibile nell”inerfaccia WebGis.
Editing on line¶
Query form e widget di modifica sono già definiti nel progetto per il layer: buildings
e per la tabella relazionata ``*maintenance_works.
Buildings
id (integer - primary key): autogenerate
name (text NOT NULL): text edit
address (text): Value relation (roads layer - code/name fileds)
year (integer NOT NULL): unique values (2015,2016,2017,2018,2019,2020)
photo (text): attachment
link (text): text edit
form (text): attachment
high (integer NOT NULL): range (10-30 step 2)
volume (integer): range (50-200 step 10)
surface (integer): text edit
architectural_barriers (text): Checkbox (Checked - Not checked)
date_barriers (date): date (yyyy/MM/dd)
safety_exits (text): Checkbox (Checked - Not checked)
date_exits (date): date (yyyy/MM/dd)
fire_system (text): Checkbox (Checked - Not checked)
date_fire (date): date (yyyy/MM/dd)
type (text NOT NULL): unique values (Administrative, Commercial, Residential)
Maintenance_works
id (integer - primary key): autogenerate
id_buildings (text - relation key): text edit
maintenance (text NOT NULL): unique values
date (date): date (yyyy/MM/dd)
form (text): attachment
value (integer): range (10-30 step 2)
Per attivare la funzione di editing su webgis, accedi all”elenco dei livelli e identifica i due livelli elencati precedentemente.
Cliccando sull”icona Editing layer
(posizionata a sinistra di ogni layer) si aprirà un modale che permetterà di:
definire la
scala di attivazione
del”editing (solo per le tabelle geometriche)definire gli
utenti Viewer
(singoli o gruppi)abilitati
all”editing online «
Gli utenti Viewers (singoli o gruppi) disponibili nel menù a tendina saranno limitati a quelli che hanno permesso di accesso in consultazione al progetto WebGis in cui è contenuto il layer
Attivata la funzione di editing, aggiornando il servizio WebGis, la voce Strumenti
apparirà sul pannello di sinistra.
Attivando la funzione di editing sarà possibile modificare gli attributi delle features del layer degli edifici pubblici e dei relativi interventi di manutenzione
Per ulteriori informazioni sulla funzione di editing web, leggi il capitolo dedicato sul manuale.
Personalizza la tua demo¶
Vuoi testare più in profondità la funzione di editing?
Ridefinisci gli attribut form, gli alias e i widget di modifica associati ai singoli campi e ricarica il progetto per verificare le nuove impostazioni.
Prima però consulta il paragrafo dedicato all”elenco e alle limitazioni sui singoli widget di modifica ereditabili dal progetto QGIS