ArcGIS Survey123 supporta un gran numero di specifiche XLSForm. La presente guida di riferimento fornisce un riepilogo delle funzionalità di XLSForm utilizzabili in Survey123. È possibile creare i propri rilevamenti in Survey123 Connect o sul sito Web Survey123; alcune funzionalità sono disponibili in uno o nell'altro, altre invece sono disponibili in entrambi.
Tipi di domande
La tabella seguente descrive i tipi di domanda disponibili in Survey123 Connect, l'app da campo Survey123, il Web designer Survey123 e l'app Web Survey123. In alcune domande, esistono differenze di comportamento e implementazione tra le piattaforme. Per le differenze, fare riferimento alle note dopo la tabella.
Tipo di domanda Survey123 Connect | Tipo di domanda Web designer Survey123 | Descrizione | App supportata sul campo Survey123 | Supportato nella web app Survey123 |
---|---|---|---|---|
audio⁴ | Audio⁴ ⁶ | Registra una clip audio nell'app da campo. Registra una clip audio o accetta un file audio caricato nell'app web. | Sì | Sì |
codice a barre | Scansiona un codice a barre o QR | Sì | Sì | |
Inizia un gruppo | Inizia un gruppo di domande. | Sì | Sì | |
Inizia una ripetizione | N/D | Inizia un insieme di domande ripetute. | Sì | Sì |
calcola | N/D | Esegue un calcolo con i valori del modulo. Il campo calculate contiene il risultato del calcolo. | Sì | Sì |
decimale¹ | Numero decimale. | Sì | Sì | |
data | Immissione della data. | Sì | Sì | |
datetime | Immissione della data e dell'ora. | Sì | Sì | |
deviceid | N/D | UUID che rappresenta il dispositivo specifico sul quale è stato effettuato il rilevamento. | Sì | No |
e-mail² | N/D | Quando si accede con un account aziendale, questa domanda viene compilata automaticamente con il relativo indirizzo e-mail. | Sì | Sì |
fine | N/D | Data e ora di fine del rilevamento. | Sì | Sì |
Termina un gruppo | Termina un gruppo di domande. | Sì | Sì | |
Termina una ripetizione | N/D | Termina un insieme di domande ripetute. | Sì | Sì |
file | Accetta un file sul dispositivo. | Sì | Sì | |
geopoint³ | Acquisisce una data coordinata GPS. Per impostazione predefinita, corrisponde alla posizione corrente. | Sì | Sì | |
geoshape³ | Raccoglie un poligono su una mappa. | Sì | Sì | |
geotrace³ | Raccoglie una linea su una mappa. | Sì | Sì | |
nascosto | N/D | Crea un campo nel feature layer che non viene visualizzato nel modulo. Utilizzare le colonne bind::esri:fieldType e bind::esri:fieldLength per specificare lo schema dei dati per il campo. | Sì | Sì |
intero¹ | Numero intero. | Sì | Sì | |
immagine | Accetta un'immagine dai file del dispositivo o da una foto scattata direttamente. | Sì | Sì | |
nota | Visualizza il testo sulla schermata. Nota può anche gestire i calcoli nascosti. | Sì | Sì | |
intervallo | Cursore⁶ | Immettere per un determinato intervallo di numeri. | Sì | Sì |
rank list_name | Domanda di classificazione; ordina un elenco di scelte. Sostituire list_name con il nome della lista scelta. | Sì | Sì | |
select_one list_name | Elenco a discesa⁵ ⁶, Scala Likert ⁵ ⁶, Valutazione⁶, Selezione singola⁶, Griglia di selezione singola⁶ | Domanda a scelta multipla; è possibile selezionare una sola risposta. Sostituire list_name con il nome della lista scelta. | Sì | Sì |
select_one_from_file file_name.csv | N/D | Domanda a scelta multipla; è possibile selezionare una sola risposta. Sostituire file_name.csv con il nome del file che si trova nella cartella dei file multimediali del rilevamento che contiene l'elenco di scelte. | Sì | Sì |
select_multiple list_name | Domanda a scelta multipla; è possibile selezionare più risposte. Sostituire list_name con il nome della lista scelta. | Sì | Sì | |
select_multiple_from_file file_name.csv | N/D | Domanda a scelta multipla; è possibile selezionare più risposte. Sostituire file_name.csv con il nome del file che si trova nella cartella dei file multimediali del rilevamento che contiene l'elenco di scelte. | Sì | Sì |
avvia | N/D | Data e ora di inizio del rilevamento. | Sì | Sì |
testo | Indirizzo⁶, E-mail⁶, Più righe di testo⁵ ⁶, Una riga di testo⁶, Sito Web⁶ | Risposta con testo libero. A E-mail e Sito Web si applica un'espressione regolare. L'aspetto di geocodifica è applicato all'Indirizzo | Sì | Sì |
tempo | Immissione dell'ora. | Sì | Sì | |
nome utente | N/D | Quando si accede con un account aziendale, questa domanda viene compilata automaticamente con il relativo nome utente. | Sì | Sì |
¹Il Web designer combina domande con numeri interi e decimali in un singolo tipo di domanda denominato Numero. Una casella di controllo nelle proprietà della domanda consente al designer del rilevamento di definire l’input richiesto.
²I tipi di domanda e-mail forniti in Survey123 Connect e nel Web designer Survey123 sono implementati in modo diverso. L'implementazione in Survey123 Connect popola automaticamente l'indirizzo e-mail di account dell'organizzazione in cui l'utente ha effettuato l'accesso. L'implementazione nel designer web Survey123 è invece un campo di testo che accetta solo la formattazione dell'indirizzo e-mail corrispondente.
³Le domande geopoint, geotrace e geoshape sono state combinate in un singolo tipo di domanda denominato Mappa. Una casella di controllo nelle proprietà della domanda consente al designer del rilevamento di definire l’input richiesto. Un tipo domanda aggiuntivo denominato Indirizzo permette di inviare i punti di geocodifica.
⁴Le domande audio non consentono il caricamento nell'app da campo Survey123 come nell'app Web. Per consentire il caricamento di audio nell'app da campo, utilizza una domanda File.
⁵Vari aspetti disponibili in Survey123 Connect sono, invece, disponibili come tipi di domande separate nel Web designer Survey123. Tali aspetti sono Più righe di testo, Elenco a discesa e Scala Likert.
⁶Per ogni domanda, il Web designer fornisce l'opzione per memorizzare la risposta nella cache. Nell'applicazione web, dopo aver inviato un record dell'indagine, la risposta alla domanda sarà memorizzata nella cache del browser e precaricata nel prossimo invio fatto per questa indagine su quel dispositivo. La memorizzazione di una risposta nella cache può essere impostata per tutti i tipi di domanda tranne Audio, Immagine, Caricamento file e Firma.
Colonne del foglio di lavoro del rilevamento
La seguente tabella contiene tutte le colonne supportate da Survey123. Queste colonne sono incluse nel foglio di lavoro del rilevamento nel modello Avanzato e sono elencate in questa tabella nell'ordine in cui compaiono nel foglio di lavoro.
Colonna | Descrizione |
---|---|
type | Selezionare un tipo di domanda dall’elenco fornito. Immettere un nome elenco valido se si utilizza una domanda select_one o select_multiple. |
nome | Il nome del campo nel feature layer. |
Etichetta | L'etichetta della domanda visualizzata nel rilevamento. |
Suggerimento | Informazioni che possono aiutare a rispondere alla domanda del sondaggio. |
guidance_hint | Informazioni aggiuntive, visualizzate solo dopo aver premuto un'icona. |
appearance | Seleziona l'aspetto di questo campo nel rilevamento. |
obbligatorio | Seleziona Sì per richiedere un valore in questo campo prima di completare il rilevamento. |
required_message | Quando un campo richiesto non ha risposta, viene visualizzato il messaggio in questa colonna per richiedere una risposta. |
readonly | Selezionare Sì per impostare i valori in questo campo su sola lettura. Questi valori non possono essere modificati nel rilevamento. |
default | Impostare il valore predefinito per questo campo. Ciò permette di precompilare il rilevamento con il valore predefinito. Può essere usato per risparmiare tempo fornendo la risposta più comune o mostrando il tipo di scelta di risposta previsto. |
calculation | Eseguire calcoli utilizzando i valori delle domande precedenti (ad esempio, ${number} * 100). Fare riferimento al campo calculate per visualizzare il risultato (ad esempio, The answer is ${calc}). |
constraint | Limitare l’intervallo di numero che possono essere immessi (ad esempio, .>0 e .<100). Può essere utilizzato con tutti i tipi di domanda. |
constraint_message | Quando le condizioni di vincolo non sono soddisfatte, viene visualizzato questo messaggio per richiedere una risposta valida. |
relevant | Questo permette di saltare le domande o di far apparire altre domande in base alla risposta a una domanda precedente. Una domanda è resa visibile soddisfacendo le condizioni nella colonna corrispondente (per esempio, ${name} = 'value'). Una domanda nascosta da questa colonna invia solo valori nulli. |
choice_filter | Quando si utilizzano le selezioni a cascata, questo campo contiene l'espressione per far corrispondere le colonne degli attributi aggiuntivi nella scheda delle scelte (ad esempio, attribute = ${value}). |
repeat_count | Questo valore specifica il numero di record disponibili in una ripetizione. Una volta specificato il conteggio delle ripetizioni, i record non possono essere aggiunti o eliminati dalla ripetizione. |
media::audio | Copiare un file audio nella sottocartella multimediale del progetto e immettere il nome del file audio (ad esempio, audio.mp3) per presentare l'audio con la domanda. |
media::image | Copiare un file immagine nella sottocartella multimediale del progetto e immettere qui il nome del file audio (ad esempio, image.jpg) per visualizzare un’immagine con la domanda. |
bind::type | Un tipo di campo che sovrascrive il tipo di campo predefinito per la domanda. |
bind::esri:fieldType | Definire il tipo di campo target nel feature layer. Può essere usato per sovrascrivere il tipo di campo predefinito (ad esempio, i campi calculate e select_one sono stringhe per impostazione predefinita. Per salvare i valori nel feature layer come numeri interi, selezionare esriFieldTypeInteger). |
bind::esri:fieldLength | Definire la lunghezza del campo target nel feature layer. Può essere usato per sovrascrivere la lunghezza di campo predefinita. |
bind::esri:fieldAlias | Fornire valori per l'alias di campo nel feature layer. Può essere usato per sovrascrivere i valori alias di campo predefiniti, che sono derivati dall'etichetta della domanda. |
body::esri:style | Fornire espressioni per definire il comportamento di una domanda (ad esempio, il colore di sfondo per gruppi e ripetizioni). |
bind::esri:parameters | Fornire parametri per una domanda che sono specifici per Survey123 (ad esempio, parametri per il controllo del comportamento delle ripetizioni durante la modifica del rilevamento). |
bind::esri:workflow | Fornisce parametri per consentire a un rilevamento di essere disponibile per la modalità di misurazione di un telemetro. |
parametri | Fornire parametri XLSForm standard per una domanda (ad esempio, i parametri start, end e step per una domanda di intervallo). |
body::accept | Impostare i tipi di file accettati per la domanda del file. Accetta le estensioni file, con più estensioni separate da virgole (ad esempio .jpg, .png). |
body::esri:visible | Questo permette di saltare le domande o di far apparire altre domande in base alla risposta a una domanda precedente. Una domanda è resa visibile soddisfacendo le condizioni nella colonna body::esri:visible (per esempio, ${name} = 'value'). Una domanda nascosta da questa colonna contiene ancora invia valori. |
body::esri:inputMask | Immettere un’espressione per utilizzare una maschera di input per fornire un formato impostato per l'immissione dei dati tramite l'utilizzo di caratteri e simboli. |
label::language (xx) | Fornire traduzioni per le etichette della domanda. La lingua deve essere specificata tramite il suo nome e codice (ad esempio label::Español (es)). Aggiungere una nuova colonna per ogni lingua. L'elenco delle lingue viene visualizzato in un menu a discesa nel rilevamento. |
hint::language (xx) | Fornire traduzioni per i suggerimenti della domanda. La lingua deve essere specificata tramite il suo nome e codice (ad esempio hint::Español (es)). Aggiungere una nuova colonna per ogni lingua. L'elenco delle lingue viene visualizzato in un menu a discesa nel rilevamento. |
guidance_hint::language (xx) | Fornire traduzioni per i suggerimenti guida. La lingua deve essere specificata tramite il suo nome e codice (ad esempio guidance_hint::Español (es)). Aggiungere una nuova colonna per ogni lingua. L'elenco delle lingue viene visualizzato in un menu a discesa nel rilevamento. |
required_message::language (xx) | Fornire traduzioni per il messaggio che appare se una domanda richiesta non ha ricevuto risposta. La lingua deve essere specificata tramite il suo nome e codice (ad esempio required_message::Español (es)). Aggiungere una nuova colonna per ogni lingua. L'elenco delle lingue viene visualizzato in un menu a discesa nel rilevamento. |
body::accuracyThreshold | Fornire un valore numerico per la soglia (in metri) sopra cui i valori delle posizioni non saranno accettati. Si applica al geopunto e ai vertici delle domande geoshape e geotrace. |
bind::esri:warning | Applicare un'espressione che visualizzi gli avvisi se le condizioni non sono soddisfatte. |
bind::esri:warning_message | Messaggio che viene visualizzato se le condizioni bind::esri:warning non sono soddisfatte. |
bind::saveIncomplete | Impostare su true se l'app deve salvare automaticamente la risposta dopo la domanda. |
Aspetti
Nella colonna Aspetto è possibile immettere i seguenti valori per tipi specifici di domande, al fine di modificarne l'aspetto o il comportamento. Per ulteriori informazioni su ciascun valore, consultare la sezione Aspetto.
Aspetto | Tipo di domanda applicabile | Descrizione | App supportata sul campo Survey123 | Supportato nella web app Survey123 |
---|---|---|---|---|
annotate | immagine | Consente all'utente di aprire una finestra di disegno nella quale disegnare, che supporta anche annotazioni e immagini. | Sì | Sì |
autocomplete | select_one | Le risposte possibili vengono visualizzate in un menu a discesa, con l'immissione di testo per limitare le opzioni. | Sì | Sì |
calculator | integer, decimal | Visualizza un widget calcolatrice personalizzato per questa domanda. | Sì | No |
compact | select_one, select_multiple, begin group, begin repeat | Per select_one and select_multiple questions, presenta scelte orizzontalmente in modo efficiente dal punto di vista dello spazio. Per gruppi e ripetizioni, presenta domande in uno stato compresso all'avvio, che può essere esteso dall'utente. | Sì | Sì |
compact-n | select_one, select_multiple | Presenta scelte orizzontalmente in modo efficace nello spazio con un numero massimo di colonne specificato per n. Per esempio, compact-3 limita la domanda a un massimo di tre colonne. | Sì | Sì |
distress | intero | Visualizza la domanda come una scala con cursore colorata. | Sì | No |
draw | immagine | Consente all'utente di aprire una finestra di disegno nella quale disegnare. | Sì | Sì |
field-list | iniziare gruppo, iniziare ripetizione | Visualizza il gruppo di domande su una pagina separata quando lo stile del rilevamento è impostato su pagine. | Sì | Sì |
geocodifica | testo | Cerca e invia indirizzo geocodificato. | Sì | Sì |
getinframarkerid | testo | Recuperare e memorizzare un ID tag InfraMarker di 24 caratteri. | Sì | No |
nascosto | Tutte | Nasconde la domanda dalla vista, ma accetta comunque valori predefiniti e calcoli. | Sì | Sì |
hide-input | geopoint | Comprime la sezione di inserimento delle coordinate quando il rilevamento viene aperto nell'app Web. | No | Sì |
orizzontale | select_one, select_multiple | Visualizza le risposte possibili orizzontalmente e in colonne. | Sì | Sì |
horizontal-compact | select_one, select_multiple | Stesso aspetto compatto. | Sì | Sì |
image-map | select_one, select_multiple | Visualizza un'immagine .svg allegata con regioni selezionabili. | Sì | No |
inframarker | testo | Fornire le informazioni da scrivere in un tag InfraMaker. | Sì | No |
likert | select_one | Fa apparire le risposte possibili come scala Likert. | Sì | Sì |
minimal | select_one, select_multiple, barcode, begin repeat | Presenta risposte multiple (select_one, select_multiple), domande multiple (repeats) e una casella di testo (barcode) in uno stile nascosto o ridotto a icona. | Sì | Sì |
minimal compact | Inizia una ripetizione | Presenta domande all'interno di una ripetizione sia compresse (compact) che nascoste (minimal). | Sì | Sì |
month-year | data | Consente di selezionare solo un mese e un anno per la data. | Sì | Sì |
multiline | testo, immagine, file | Presenta una domanda di testo come un contenitore di testo multilinea. Permette più allegati per una domanda immagine o file. | Sì | Sì |
new-front | immagine | Limita la domanda al solo scatto di una foto usando la fotocamera anteriore come impostazione predefinita. | Sì | No |
new-rear | immagine | Limita la domanda al solo scatto di una foto usando la fotocamera posteriore come impostazione predefinita. | Sì | No |
no-ticks | intervallo | Visualizza la barra di intervallo senza posizioni, valori minimi o massimi. | Sì | Sì |
nopredictivetext | testo | Disabilita la previsione testo per i dispositivi mobili. | Sì | No |
numbers | integer, decimal | Visualizza una tastiera numerica personalizzata per questa domanda. | Sì | No |
predictivetext | testo | Abilita la previsione testo per i dispositivi mobili. | Sì | No |
press-to-locate | geopoint, geotrace, geoshape | Per le domande geopoint, accetta solo una posizione dopo che l'utente interagisce con la domanda. Per geotrace e geoshape, centra la posizione dell'utente senza catturare un punto quando interagisce per la prima volta con la domanda. | Solo per geopoint | Sì |
rangefinder | testo | Accetta l'intero oggetto JSON o uno specifico valore restituito da un telemetro. | Sì | No |
cerca | testo | Popola l'elenco di scelte con i valori di una tabella CSV nella cartella degli elementi multimediali del rilevamento, o un feature layer o tabella feature esistente. | Sì | No |
signature | immagine | Presenta un UI per l’acquisizione della firma. start | Sì | Sì |
spike | immagine | Richiede un dispositivo e un'app Spike. Usa l'integrazione Spike per misurare la distanza e la posizione in una foto. | Sì | No |
spike-full-measure | immagine | Richiede un dispositivo e un'app Spike. Usa l'integrazione Spike per misurare la distanza, la posizione, l'area e le lunghezze in una foto. | Sì | No |
spike-point-to-point | immagine | Richiede un dispositivo e un'app Spike. Usa l'integrazione Spike per misurare la distanza tra due punti fotografati. | Sì | No |
spinner | integer, decimal | Aggiunge pulsanti per aumentare e diminuire il valore. | Sì | No |
table-list | Inizia un gruppo | Presenta un set di domande select_one dentro un gruppo con un elenco di scelte comune in un formato tabella. | Sì | Sì |
thousands-sep | decimale | Visualizza risposte con separatori delle migliaia. Si applica solo alle domande precompilate. | Sì | No |
week-number | data | Consente di selezionare il numero della settimana. | Sì | No |
anno | data | Consente di selezionare solo un anno per la data. | Sì | Sì |
Parametri
Alcuni tipi di domanda in XLSForm hanno parametri aggiuntivi che permettono di controllare lo stile o il comportamento delle domande in un rilevamento. In alcuni casi, questi parametri sono complementari agli aspetti che un tipo di domanda supporta. Per una panoramica dei parametri supportati da ogni tipo di domanda, consultare Parametri XLSForm.
Valori di default
L'immissione di today() nella colonna default di una domanda date consente di impostare la data odierna come valore predefinito.
Inserire la scelta nome (non la scelta etichetta) per i valori predefiniti delle domande select_one.
Le risposte alle domande di tipo select_multiple si comportano diversamente dalle altre, con le singole risposte selezionate immesse nell'ordine di selezione e separate da virgole. Per definire più valori come predefiniti in una domanda di tipo select_multiple, separarli con la virgola, ad esempio, elemento1,elemento2,elemento3.
Convalida dei dati
Immettendo sì come valore nella colonna required che la domanda survey contenga un valore prima della compilazione del modulo.
Operatori
È possibile utilizzare gli operatori riportati nella seguente tabella nelle colonne XLSForm che supportano le espressioni, incluse constraint, calculation e relevant.
Per ulteriori informazioni sui calcoli e sui vincoli, consultare Formule; per ulteriori informazioni sull'uso della colonna relevant, consultare Espressioni rilevanti.
Operatore | Descrizione | Esempio |
---|---|---|
. | Risposta corrente | .=1 |
+ | Addizione | ${question_one} + 4 |
- | Sottrazione | ${question_one} - 4 |
* | Moltiplicazione | ${question_one} * 4 |
div | Divisione | ${question_one} div 4 |
= | Uguale a | ${price}=9.80 |
!= | Non uguale | ${price}!=9.80 |
< | Minore di | ${price}<9.80 |
<= | Minore o uguale a | ${price}<=9.80 |
> | Maggiore di | ${price}>9.80 |
>= | Maggiore o uguale a | ${price}>=9.80 |
and | And | ${price}>9.00 and ${price}<9.90 |
mod | Modulo (resto della divisione) | ${question_one} mod ${question_two} |
or | Oppure | ${price}=9.80 or ${price}=9.70 |
Funzioni
Survey123 supporta le seguenti funzioni:
Funzione | Descrizione | Esempio |
---|---|---|
boolean(question, expression, or value) | Restituisce true se il valore fornito non è null. Si consiglia invece di utilizzare boolean-from-string(). Attenzione:Questa funzione restituisce sempre true nell'app Web Survey123. Per le alternative, consultare Valori vuoti. | boolean(${question_one}) |
boolean-from-string() | Restituisce true se la stringa fornita è "true" o "1". In caso contrario, restituisce false. | boolean-from-string(${question_one}) |
coalesce(value1, value2) | Restituisce il primo valore non vuoto Questa funzione supporta solo due valori. | coalesce(${question_one}, ${question_two}) |
concat(value1, value2, …) | Restituisce la concatenazione dei valori di stringa. | concat(${question_one}, ' and ', ${question_two}) |
contains(string, substring) | Restituisce true se la stringa fornita contiene la sottostringa. | contains(${question_one}, 'red') |
count(repeat) | Restituisce la quantità di risposte a una determinata domanda nelle ripetizioni. Per ulteriori informazioni, consultare Funzioni di aggregazione. Nota:Quando utilizzata nell'app da campo Survey123, questa funzione può essere posizionata dentro o fuori della ripetizione. Se la funzione deve essere utilizzata nell'app Web Survey123, deve essere posizionata fuori dalla ripetizione. È possibile fare riferimento a un valore conteggio esterno alla ripetizione in un calcolo all'interno della ripetizione. | count(${question}) |
count-selected(question) | Restituisce il numero di risposte selezionate per le domande select_one e select_multiple. Questa funzione restituisce anche il numero di file allegati per le domande di tipo image, audio e file utilizzando l'aspetto multiline. | count-selected(${question_one}) |
date(question, expression, or value) | Converte un numero o stringa in un oggetto data, senza mantenere il tempo. | date('2017-05-28T04:39:02+10:00') |
date-time(question, expression, or string) | Converte un numero o stringa in un oggetto data. | date-time('2017-05-28T04:39:02+10:00') |
Converte un oggetto data in un numero decimale date-time. | decimal-date-time(${date_question}) | |
decimal-time(question, expression, or string) | Converte un oggetto orario in un numero che rappresenta un giorno frazionario nel fuso orario del dispositivo. | decimal-time(${time_question}) |
ends-with(string, substring) | Restituisce true se la stringa fornita finisce con la sottostringa. | ends-with(${question_one}, 'hand.') |
false() | False | false() |
Adatta una data o un'ora esistente a un formato specifico. | format-date(${previous_time}, '%H:%M') | |
if(condition, a, b) | Se la condizione è vera, restituisce a; altrimenti, restituisce b. | if(selected(${question_one}, 'yes') and selected(${question_two}, 'yes'), 'yes', 'no') |
ripetizione indicizzata(domanda, ripetizione, numero indice) | Restituisce il valore da una domanda specifica in un record di ripetizione. Per ulteriori informazioni, fare riferimento alla sezione sulle ripetizioni. | indexed-repeat(${room_no}, ${floor}, 3) |
int(question, expression, or value) | Converte in intero. La conversione varia in base al tipo di dati. Nota:Se questa funzione è vuota restituirà NaN e la domanda rimarrà vuota. | int(${question_one}) |
join(separator, question) | Concatena tutte le risposte ad una determinata domanda in una ripetizione, separate dal separatore specificato. | join(',', ${question_in_repeat}) |
jr:choice-name(choice_name, 'question') | Utilizzato per le domande select_one. Restituisce l'etichetta associata al nome della scelta nella domanda specificata. Tenere presente che la domanda deve essere definita all'interno di virgolette. | jr:choice-name(${select_one}, '${select_one}') |
Utilizzato per le domande select_multiple. Restituisce l'etichetta associata al nome della scelta nella domanda specificata. La funzione selected-at() deve essere usata per estrarre l'etichetta delle singole risposte. Tenere presente che la domanda deve essere definita all'interno di virgolette. | jr:choice-name(selected-at(${select_multiple}, 3), '${select_multiple}') | |
max(value1, value2, ...) | Restituisce il valore massimo in un determinato intervallo o a una singola domanda nelle ripetizioni. | max(${question_one}, ${question_two}) |
min(value1, value2, ...) | Restituisce il valore minimo in un determinato intervallo o a una singola domanda nelle ripetizioni. | min(${question_one}, ${question_two}) |
not(expression) | Restituisce un valore 'false' se l'espressione restituisce vero e un valore 'true' se l'espressione restituisce falso. | not(selected(., 'yes')) |
now() | Restituisce un indicatore data e ora per questo momento. Questa funzione è utilizzata nelle domande time e dateTime. Si comporta come today() nelle domande date. | now() |
number(question, expression, or value) | Converte in numero. La conversione varia in base al tipo di dati. Nota:Se questa funzione è vuota restituirà NaN e la domanda rimarrà vuota. | number(${question_one}) |
once() | Se una domanda ha già un valore, restituisce il valore esistente. Questa funzione è utile quando si utilizza random() o uuid() in una domanda ripetuta per garantire che il valore non cambi quando si scorrono i record ripetuti nel modulo. | once(uuid()) |
posizione(...) | Restituisce l'indice del record corrente in una ripetizione. Per ulteriori informazioni, fare riferimento alla sezione sulle ripetizioni. | position(..) |
pulldata() | Restituisce un valore da un file CSV esterno. Per ulteriori informazioni, consultare Recuperare un valore da CSV. | pulldata('users', 'email', 'name', ${respondent_name}) |
pulldata("@exif") | Restituisce un valore dai metadati EXIF in un'immagine. Per ulteriori informazioni, consultare Estrarre metadati immagine. | pulldata("@exif", ${photo}, "GpsLatitude") |
pulldata("@geopoint") | Restituisce un valore da una domanda geopoint. Per ulteriori informazioni, consultare Estrarre valori geopoint. | pulldata("@geopoint", ${location}, "horizontalAccuracy") |
pulldata("@javascript") | Esegue una funzione JavaScript nel modulo e restituisce il risultato. Per ulteriori informazioni, consultare Funzioni JavaScript nei moduli del rilevamento. | pulldata("@javascript", "functions.js", "uniqueID", ${buildings}) |
pulldata("@json") | Restituisce un valore da un oggetto JSON. Per ulteriori informazioni, consultare Recuperare un valore da JSON. | pulldata("@json", ${json_output}, "attributes.ZIP_CODE") |
pulldata("@layer") | Interroga un feature layer o una tabella feature ArcGIS oppure un servizio mappa abilitato alle interrogazioni e restituisce il risultato. Per ulteriori informazioni, vedi Interrogazione di un feature layer. | pulldata("@layer", "getRecordAt", "https://services.arcgis.com/P3ePLMYs2RVChkJx/arcgis/rest/services/World_Time_Zones/FeatureServer/0", ${location}) |
pulldata("@property") | Restituisce informazioni sull'utente o dispositivo connesso. Per ulteriori informazioni, consultare Proprietà dei dispositivi e degli utenti. | pulldata("@property", 'username') |
random() | Restituisce un valore casuale compreso tra 0 (incluso) e 1 (escluso). | random() |
regex() | Applica un'espressione regolare all'input della domanda. Restituisce true se il modello è corrispondente. Per ulteriori informazioni, consultare Espressioni regolari. | regex(., '^\d{5}$') |
selected(question, value) | Verifica se la risposta è selezionata. Questa funzione è utilizzata per le domande select_one e select_multiple. | selected(${question_one}, 'a') |
selected-at(question, number) | Utilizzato per le domande select_multiple. Restituisce il nome della scelta selezionata per il numero specificato, conteggiato a partire da zero; ad esempio, '2' restituisce la terza scelta selezionata. | selected-at(${question_one}, 2) |
starts-with(string, substring) | Restituisce true se la stringa fornita inizia con la sottostringa. | starts-with(${question_one}, 'The') |
string(question, expression, or value) | Converte in stringa. La conversione varia in base al tipo di dati. | string(${question_one}) |
string-length(question, expression, or value) | Restituisce la lunghezza di una stringa non vuota. | string-length(${question_one}) |
substr(question, start, end) | Restituisce una sottostringa che parte dall'inizio specificato e si estende fino al carattere in corrispondenza dell'indice end -1, dove i valori di inizio e fine partono da 0. | substr(${question_one}, 1, 2) |
sum(repeat) | Restituisce la somma di tutte le risposte a una determinata domanda nelle ripetizioni. Per ulteriori informazioni, consultare Funzioni di aggregazione. Nota:Quando utilizzata nell'app da campo Survey123, questa funzione può essere posizionata dentro o fuori della ripetizione. Se la funzione deve essere utilizzata nell'app Web Survey123, deve essere posizionata fuori dalla ripetizione. È possibile fare riferimento a un valore somma esterno alla ripetizione in un calcolo all'interno della ripetizione. | sum(${question}) |
today() | Restituisce la data odierna, memorizzata internamente come mezzogiorno locale. Questa funzione è utilizzata nelle domande date. | today() |
true() | True | true() |
uuid() | Restituisce una stringa UUID casuale. | uuid() |
version() | Restituisce la versione del rilevamento definito nel foglio di lavoro delle impostazioni. | version() |
Le seguenti funzioni matematiche sono supportate in Survey123:
Funzione | Descrizione | Esempio |
---|---|---|
acos(value) | Restituisce l'arco coseno del valore. | acos(${question_one}) |
asin(value) | Restituisce il seno dell'arco del valore. | asin(${question_one}) |
atan(value) | Restituisce l'arco tangente del valore. | atan(${question_one}) |
atan2(value1, value2) | Restituisce l'arco tangente del quoziente dei valori. | atan2(${question_one}, ${question_two}) |
cos(value) | Restituisce il coseno del valore come angolo in radianti. | cos(${question_one}) |
sin(value) | Restituisce il seno del valore come angolo in radianti. | sin(${question_one}) |
tan(value) | Restituisce la tangente del valore come angolo in radianti. | tan(${question_one}) |
exp(value) | Restituisce l'esponente naturale del valore. | exp(${question_one}) |
exp10(value) | Restituisce 10 alla potenza del valore. | exp10(${question_one}) |
log(value) | Restituisce il logaritmo naturale del valore. | log(${question_one}) |
log10(value) | Restituisce il logaritmo in base 10 del valore. | log10(${question_one}) |
pi() | Restituisce pi greco. | pi() |
pow(value, power) | Restituisce il valore alla potenza specificata. | pow(${question_one}, 3) |
round(value, places) | Restituisce il valore arrotondato. | round(${question_one}, 5) |
sqrt(value) | Restituisce la radice quadrata del valore. | sqrt(${question_one}) |
Formattazione HTML
È possibile utilizzare la formattazione HTML nelle etichette e nei suggerimenti delle domande, nonché nelle etichette degli elenchi di scelta. La formattazione HTML supportata è la seguente:
Tag | Attributo |
---|---|
a | href, style |
abbr | title |
audio¹ | autoplay, controls, loop, muted, preload |
b, strong, i, em, u, ul, ol, li, tbody, br, hr | |
dd, dl, dt | style |
div¹ | style, align |
figcaption | style |
figure | style |
font | size, color, style |
h1, h2, h3, h4, h5, h6 | style |
img | src, width, height, border, alt, style |
p | style |
source¹ | media, src, type |
span | style |
sub | style |
sup | style |
table | width, height, cellpadding, cellspacing, border, style |
td, th | height, width, valign, align, colspan, rowspan, nowrap, style |
tr | height, valign, align, style |
video¹ | autoplay, controls, height, loop, muted, poster, preload, width |
¹Supportato solo nella web app Survey123.
Suggerimento:
Per impostazione predefinita, un collegamento ipertestuale creato con la formattazione HTML che viene aperto nell'app Web Survey123 aprirà la destinazione nella stessa scheda del rilevamento. Per aprire invece questo collegamento in una nuova scheda, aggiungere, ad esempio target="_blank" al tag a href:
<a href="https://www.esri.com" target="_blank">Link to Esri website</a>
Espressioni regolari
Le espressioni regolari sono sequenze di caratteri che definiscono uno schema di ricerca. Possono essere utilizzate in una domanda per determinarne il valore sulla base di altre domande o per limitare l'immissione dei dati. È possibile creare un'espressione regolare dalle sottoespressioni riportate nella seguente tabella. Per ulteriori informazioni, fare riferimento alla sezione Formule.
Sottoespressione | Corrispondenza |
---|---|
^ | Corrisponde all'inizio della linea. |
$ | Corrisponde alla fine della linea. |
. | Corrisponde a qualsiasi carattere singolo eccetto nuova linea. |
[...] | Corrisponde a qualsiasi carattere singolo tra parentesi quadre. |
[^...] | Corrisponde a qualsiasi carattere non incluso tra parentesi quadre. |
(re) | Raggruppa le espressioni regolari e ricorda il testo corrispondente. |
(?: re) | Raggruppa le espressioni regolari senza ricordare il testo corrispondente. |
a| b | Corrisponde ad a o b. |
\A | Inizio dell'intera stringa. |
\b | Corrisponde ai limiti di parola al di fuori delle parentesi e corrisponde a backspace (0x08) quando è all'interno di parentesi. |
\B | Corrisponde ai limiti non parole. |
\d | Corrisponde a cifre. È equivalente a [0-9] |
\D | Corrisponde a non cifre. |
\G | Corrisponde al punto in cui termina l'ultima corrispondenza. |
\n, \t, \e ecc. | Corrisponde a nuova riga, tabulazione, escape e così via. |
\N | Riferimento posteriore per acquisire il numero del gruppo N. |
re* | Corrisponde a 0 o a più occorrenze dell'espressione precedente. |
re+ | Corrisponde a 1 o a più occorrenze dell'espressione precedente. |
re? | Corrisponde a 0 o 1 occorrenza dell'espressione precedente. |
re{ n} | Corrisponde al numero esatto di occorrenze dell'espressione precedente definita al posto di n. |
re{ n,} | Corrisponde a n o più occorrenze dell'espressione precedente. |
re{ n, m} | Corrisponde almeno al numero delle occorrenze definito da n e, al massimo, a quelle definite da m nell'espressione precedente. |
\s | Corrisponde a un carattere bianco: tabulazione, avanzamento riga, avanzamento carta, ritorno a capo o spazio. |
\S | Corrisponde a non spazi. |
\w | Corrisponde ai caratteri di parole. |
\W | Corrisponde ai caratteri non di parole. |
\z | Termine dell'intera stringa. |
\Z | Termine dell'intera stringa eccetto il terminatore di riga finale consentito. |
Ad esempio, l'espressione regolare regex(.,'^[A-Za-z]*$') richiede di immettere in una domanda di tipo stringa solo lettere, senza numeri o caratteri speciali.
Tipi di campo Esri
È possibile utilizzare la colonna bind::esri:fieldType per sovrascrivere il tipo di campo predefinito con uno dei seguenti valori. Per ulteriori informazioni, consultare la sezione Colonne personalizzate Esri.
Valore campo | Risultato |
---|---|
esriFieldTypeDate | Valori di data e ora |
esriFieldTypeDateOnly | Valori solo data senza valori ora |
esriFieldTypeTimeOnly | Valori solo ora senza valori data |
esriFieldTypeTimestampOffset | Data, ora e valore di offset da UTC |
esriFieldTypeDouble | Numero a virgola mobile con doppia precisione |
esriFieldTypeGUID | Globally Unique Identifier |
esriFieldTypeInteger | Numeri interi (32 bit) |
esriFieldTypeBigInteger | Numeri interi da (64 bit) |
esriFieldTypePointZ | Abilita l'acquisizione del valore dell'altitudine nei geopoint. |
esriFieldTypeString | Una serie di simboli alfanumerici |
null | Campo vuoto; non memorizza i valori |
Caratteri speciali
I nomi delle domande e delle scelte non devono contenere caratteri speciali, come spazi, virgole, trattini, parentesi o caratteri quali $, % e #. È importante che i nomi delle scelte per le domande di select_multiple non contengano spazi o virgole.