Livello filtrato dall’utente

Regola

La funzione di filtro presentata permette di filtrare i dati visualizzati sulla mappa in base all’utente loggato. È possibile filtrare solo gli livelli vettoriali perché Lizmap utilizza una colonna nella tabella degli attributi.

Il filtro attualmente utilizza l’ID del gruppo di utenti collegato. È attivo per tutte le richieste al server QGIS, e quindi riguarda:

  • le immagini dei livelli vettoriali visualizzate sulla mappa
  • i popup. Vedi Popup
  • gli elenchi di elementi Localizza per livello. Vedi Localizzare attraverso un livello.
  • elenchi a discesa di Forms di modifica da Relazione valore. Vedi Redazione.
  • la visualizzazione della tabella degli attributi, ecc.

Ci sono due tipi di filtri:

  • basato su attributi
  • basato su relazioni spaziali

Filtro per relazioni spaziali

Regola

In questo pannello, noi possiamo:

  • configurare un livello poligonale da usarsi per il filtro spaziale
  • configurare i livelli che devono essere filtrati dal livello filtro
../../_images/filter-polygon.gif

Prerequisiti

Questa è una funzionalità di Lizmap 3.5.

Il plugin Lizmap in QGIS Server deve essere installato con almeno Lizmap QGIS plugin 3.6. Altrimenti il filtro non funzionerà e tutti i dati saranno visibili. Vedere Lizmap QGIS Server plugins.

Configurazione del plugin

../../_images/interface-filter-by-polygon.jpg
  1. Scegliere il livello poligonale usato per il filtro

  2. Scegli il campo di questo livello che ha i gruppi Lizmap, separati da una virgola.

  3. Aggiungi un livello per da filtrare a questo strumento:

    1. Fai clic sul pulsante add_layer_svg.
    2. Scegliere il livello da filtrare
    3. Scegli la chiave primaria del livello
    4. Scegliere se il filtro è sia per la visualizzazione che per la modifica o solo per la modifica
    5. Scegliete la relazione spaziale interseca o contiene.
  • Per modificare un livello nella tabella, selezionalo e clicca sul pulsante edit_layer_svg o fai doppio clic sulla riga.
  • Per rimuovere un livello dalla tabella, selezionalo e clicca sul pulsante remove_layer_svg.

Per tua informazione, le prestazioni saranno migliori quando si utilizzano i livelli PostgreSQL: siano essi filtranti o filtrati o entrambi.

Filtrare per attributo

Esempio

Un video tutorial è disponibile su: https://vimeo.com/83966790

Configurazione del plugin

Per utilizzare lo strumento di filtro dei dati in Lizmap Web Client, è necessario:

  • avere accesso all’interfaccia di amministrazione di Lizmap Web Client

Ecco i passi dettagliati per configurare questa funzionalità:

Avvertimento

Nell’amministrazione di Lizmap Web Client, nelle proprietà del repository, assicurarsi che anonymous e altri gruppi rilevanti non siano selezionati per Visualizza sempre i dati completi dei livelli, anche se filtrati dal login. Vedi Definire i diritti per ogni gruppo.

  • Controlla l’ID del gruppo o l’ID dell’utente nell’interfaccia di amministrazione:

    • Per conoscere l’ID del gruppo, dovete andare nell’interfaccia di amministrazione SYSTEM ‣ Gruppi di utenti per i diritti: L’ID appare tra parentesi dopo il nome di ogni gruppo (sotto il titolo Gruppi di nuovi utenti)
    • O per conoscere l’ID utente, basta usare il suo login.
  • Per tutti i livelli vettoriali per cui si desiderano filtrare i dati, basta aggiungere una colonna di testo che conterrà l’ID per ogni linea che ha i permessi di visualizzare questo elemento.

    • Riempite questa colonna per ogni riga della tabella degli attributi con l’ID (usando il calcolatore dei campi, per esempio).
    • È possibile impostare all come valore in alcune righe per disabilitare il filtro: Tutti gli utenti vedranno i dati di queste righe.
    • Se il valore in questa colonna per una riga non corrisponde a un gruppo di utenti, allora i dati non saranno visualizzati per nessun utente.
../../_images/interface-add-filter-by-login.jpg
  • Aggiungi il livello nel pannello della tabella Filtro dati per utente:

    1. Fai clic sul pulsante add_layer_svg.
    2. Seleziona il livello dall’elenco a discesa
    3. Seleziona il campo con l’ID
    4. Seleziona la casella se il campo contiene l’ID utente, invece dell’ID gruppo
  • Per modificare un livello nella tabella, selezionalo e clicca sul pulsante edit_layer_svg o fai doppio clic sulla riga.

  • Per rimuovere un livello dalla tabella, selezionalo e clicca sul pulsante remove_layer_svg.

Avvertimento

Disabilita la cache del client e del server per tutti i livelli filtrati. Altrimenti, i dati visualizzati non saranno aggiornati tra ogni connessione o logout dell’utente!

Redazione

Se hai abilitato la modifica (vedi Redazione) sul livello filtrato, il campo contenente l’ID sarà modificabile con:

  • o una combobox per un utente non amministratore o con il proprio login o con all.
  • o edita una linea per scrivere un valore per un utente admin