Vai al contenuto

Form degli attributi

QField crea dei form simili ma non uguali a quelli di QGIS. I widget QGIS per i campi, sono supportati al meglio e ottimizzati per l'uso mobile.

Tipo di widget Supporto Note
Modifica testo - HTML non è supportato
- Input numerico viene imposto in base al tipo.
Casella di controllo
Mappa valori
Nascosto
Allegato Questo campo è combinato con l'integrazione della fotocamera. Permette anche di aprire altri tipi di file come pdf e doc (se hai un visualizzatore appropriato) Allegato (impostazioni foto)
Data/Ora
Intervallo
Riferimento alla relazione
Widget relazione
Relazione valore
Generatore UUID
Widget QML / HTML
Altri Finanziamenti

Editabile

L'impostazione editabile sui campi è rispettata.

Ricorda l'ultimo valore

QField offre un controllo molto più dettagliato sugli ultimi valori utilizzati e ignora le impostazioni di QGIS

Nascondi modulo all'inserimento di un elemento

L'impostazione Nascondi modulo all'inserimento di un elemento è direttamente applicata al form QField.

Designer trascina e rilascia

Gruppi e tab creati nel designer "trascina e rilascia" sono supportati.

Configura un widget relazione

Desktop preparation

Per maggiori informazioni consulta il capitolo sulle relazioni della Documentazione QGIS.

Il widget delle relazioni mostra tutte gli elementi figlio di riferimento in un elenco. È possibile aggiungerli, eliminarli e aprirli.

L'identificazione visiva delle voci della lista avviene tramite il Mostra Espressione del layer figlio.

Gestione chiavi

Poiché le chiavi primarie dei layer padre sono utilizzate come chiavi esterne negli elementi dei layer figli di riferimento, queste chiavi primarie devono essere conservate per l'uso anche dopo la sincronizzazione con i dati originali. Pertanto, si consiglia di utilizzare valori stabili come UUIDs per le chiavi primarie.

È possibile aggiungere già dei figli da un genitore che sta per essere aggiunto. Questa possibilità sarà bloccata se non esiste una chiave primaria valida sul genitore o i vincoli sono violati. Nel caso in cui l'aggiunta dell'elemento genitore viene annullata dopo che alcuni figli sono già stati aggiunti, anche i figli vengono eliminati.

Relazioni Molti-a-molti

Nelle relazioni molti-a-molti, secondo la configurazione della cardinalità nelle Proprietà del Layer Vettoriale in QGIS, l'aggiunta, l'eliminazione o l'apertura di una voce nella lista influisce direttamente sul layer figlio (nel caso di cardinalità diretta) o sulla tabella di collegamento (nel caso di cardinalità molti-a-uno).

Il secondo caso è di solito usato quando ci sono informazioni di relazione aggiuntive (es. percentuale) nella tabella di collegamento.

In caso di cardinalità molti-a-uno su relazioni molti-a-molti il Mostra Espressione deve essere impostato sulla tabella di collegamento.

Configurare il Widget Allegato/Foto

Desktop preparation

Il widget di tipo Allegato viene utilizzato con i campi che memorizzano il percorso ai file.

Può essere utilizzato per:

  • mostrare e scattare foto
  • mostrare collegamenti a file esterni come PDF o documenti

Il percorso deve essere impostato su relativo. Immagini, pdf e documenti sono quindi archiviati in una sottocartella del progetto, alla quale sta puntanto il link memorizzato nel campo di testo (textfield).

In QField viene visualizzata l'immagine. Facendo clic sul simbolo della fotocamera, la fotocamera viene avviata per aggiornare l'immagine con una nuova foto.

immagini
immagini

Al momento della sincronizzazione deve essere copiata anche la sottodirectory con le immagini, i pdf e i documenti.

L'opzione hyperlink sul widget degli allegati disabilita la funzionalità della fotocamera e abilita un collegamento ipertestuale per aprire un documento (pdf, doc, ...).

Configurare un Widget di Relazione dei Valori

Desktop preparation

Il widget Value Relation offre i valori di una tabella correlata in una casella combinata. Puoi selezionare layer, colonna chiave e colonna valore. Sono disponibili diverse opzioni per modificare i comportamenti standard: consenti valore nullo, ordina per valore e consenti selezioni multiple. Il widget visualizzerà un menu a tendina o a selezione multipla degli elementi di riferimento.

Configurare la Visibilità Condizionale

Desktop preparation

I gruppi possono essere nascosti in base a un'espressione. Questo è utile quando alcuni attributi sono richiesti solo in determinate condizioni. Come esempio immagina di mappare degli alberi. Alcuni di essi potrebbero avere una malattia e tu hai un elenco di possibili malattie. Per non ingombrare il modulo con molti campi, crea un gruppo e configura un'espressione di visibilità per il gruppo "malattie". Aggiungi un campo "malattia" con una casella di controllo. Solo quando la casella è selezionata, l'elenco delle malattie sarà disponibile.

Configurazione di una casella di gruppo che verrà mostrata solo se la casella di controllo "measures_taken" è selezionata
Configurazione di una casella di gruppo che verrà mostrata solo se la casella di controllo "measures_taken" è selezionata

Vediamo cosa abbiamo sul campo:

Definire Vincoli

Desktop preparation

I campi attributo possono avere dei vincoli. I vincoli sono espressioni che devono essere valutate con True (o 1) per poter poter salvare il modulo. I vincoli sono configurati per ogni campo e si può aggiungere una descrizione che verrà visualizzata se un vincolo non è soddisfatto.

Configurazione di un vincolo all'interno di un intervallo
Configurazione di un vincolo all'interno di un intervallo

Casi di uso comune

Non puoi inserire un valore di elevazione superiore alla montagna più alta di questo paese.

"elevation" < 5000

è chiesto di inserire un idenfificatore.

"identifier" IS NOT NULL

Definire i valori predefiniti

Desktop preparation

I campi possono essere configurati con valori predefiniti. I valori predefiniti vengono inseriti nel modulo dell'attributo quando si digitalizza un nuovo elemento. Sono visibili e possono essere modificati finché il campo è modificabile. I valori predefiniti possono essere basati sulla geometria o su variabili di espressione.

Configurazione di una data formattata come valore predefinito
Configurazione di una data formattata come valore predefinito

Variabili aggiuntive

Per maggiori informazioni sulla memorizzazione delle informazioni relative alla tua posizione negli attributi dell'oggetto, fai riferimento alla documentazione GNSS.

Per gli utenti di QFieldCloud, due variabili possono essere utilizzate nelle espressioni che includono i valori predefiniti degli attributi dei moduli: - @cloud_username che restituisce il nome dell'utente QFieldCloud attualmente connesso. - @cloud_useremail che restituisce l'indirizzo email dell'utente QFieldCloud attualmente connesso.

Casi di uso comune

Inserire le informazioni di posizionamento come variabile:

@position_horizontal_accuracy

Inserisci l'ora e la data corrente:

now()

Inserisci la lunghezza della linea digitalizzata:

length($geometry)

Configura le variabili globali sul dispositivo e inseriscili.

@operator_name

Se si desidera assegnare un codice regionale in base alla posizione in cui viene inserita una nuova funzionalità, è possibile utilizzare un'espressione aggregata:

aggregate( layer:='regions', aggregate:='max', expression:="code", filter:=intersects( $geometry, geometry( @parent ) ) )

Per trasformare le coordinate ricevute da \@position_coordinate nel sistema di coordinate del tuo progetto:

x(transform(@position_coordinate, 'EPSG:4326', @project_crs ))
y(transform(@position_coordinate, 'EPSG:4326', @project_crs ))

::: {#snapping_results} Se vuoi utilizzare i risultati dello snapping dopo aver tracciato una linea, puoi utilizzare la variabile [\@snapping_results]{.title-ref}. Il codice seguente estrae il valore dell'attributo [id]{.title-ref} della corrispondenza di snapping del primo punto di una linea. :::

with_variable(
  'first_snapped_point',
  array_first( @snapping_results ),
  attribute(
    get_feature_by_id(
      @first_snapped_point['layer'],
      @first_snapped_point['feature_id']
    ),
    'id'
  )

)

Configurare Valore Completamento Automatico

Desktop preparation

La casella di spunta "Usa completamento" deve essere selezionata per poter utilizzare il completamento automatico nella relazione dei valori.

immagine
immagine

Ecco un video che mostra come funziona su QField