.. _gnrextra/srvy/srvy_questions/questions_type: Tipi di domande =============== Scegliendo una ``Question class`` nella fase di :ref:`creazione di una domanda` , si potrà a quel punto identificare un ``Question type`` e il **connesso widget** da utilizzare. .. hint:: È possibile in qualunque momento modificare il *question type* della domanda, purché si rimanga entro i confini della *question class* stabilita al momento della creazione. I parametri del *Widget* saranno poi definibili nella sezione ``Parameters``, e saranno ovviamente differenti a seconda del widget scelto. Si rimanda pertanto alla `Widgetpedia `_ per i parametri possibili per i singoli widget. Se prevista, sarà poi possibile compilare anche la sezione delle ``Choices``, ovvero delle opzioni di risposta possibili. Vediamo nel dettaglio i tipi di domanda possibili per ogni *Question class*. Inputs ------ Permette all’intervistato di inserire un valore che può essere: - ``Text``, un testo libero, utilizzando il widget `textBox `_ - ``Long text``, un testo lungo, utilizzando il widget `simpleTextArea `_ - ``Number``, un numero, utilizzando il widget `numberTextBox `_ - ``Boolean``, un valore booleano (vero o falso), utilizzando il widget `checkBox `_ - ``Date``, una data, utilizzando il widget `dateTextBox `_ - ``Time``, un orario, utilizzando il widget `timeTextBox `_ - ``Date and time``, data e ora, utilizzando il widget `dateTimeTextBox `_ - ``Geocoder``, una posizione, utilizzando il component `geoCoderField `_ I parametri di una domanda di tipo numerico come "quante ore lavori al giorno con Genropy?" sarebbero: .. image:: /_static/images/srvy/srvy_questions/numbertextbox.png :width: 400px :align: center Media ------ Permette all’intervistato di caricare un contenuto: - ``Image``, un’immagine, utilizzando il widget HTML `img `_ - ``Attachment``, un generico allegato, secondo le modalità previste per le `Attachment Tables `_ Choice ------ Permette all’intervistato di rispondere alla domanda indicando le proprie scelte tra quelle di un elenco proposto: - ``Choice``, indicherà una singola scelta dall’elenco proposto, utilizzando il widget `radioButtonText `_ o in alternativa la `filteringSelect `_ - ``Choice Y/N``, come il caso precedente ma con opzioni predefinite solo Si/No (valori Y/N) - ``Multiple choice``, indicherà una o più scelte dall’elenco proposto, utilizzando il widget utilizzando il widget `checkBoxText `_ La scelte multiple per una domanda del tipo "Quali di questi manuali hai consultato o consulti abitualmente?" sarebbero: .. image:: /_static/images/srvy/srvy_questions/choices.png :width: 400px :align: center Folders ------- Sono dei raggruppamenti di domande in base ad un comune argomento. Si può specificare come la domanda verrà presentata all’intervistato - ``Folder``, le domande vengono raggruppate in una cartella per una migliore gestione, senza quindi alcun effetto su quanto visto dall'intervistato - ``Grouped questions``, tutte le domande incluse nella *folder* vengono presentate nella stessa pagina, anziché in una pagina separata. Il risultato sarà specificato risposta per risposta, come fossero domande separate. - ``Grouped inputs``, come la precedente, con la differenza che il raggruppamento verrà rappresentato in modo differente in termini di risultato, in questo caso come Bag di valori sottostante alla stessa domanda. .. verificare questa cosa dei valori espressi diversamente .. image:: /_static/images/srvy/srvy_questions/grouped_questions.png :width: 800px :align: center Nell'albero le *folder* si presentano di un colore differente, e ramificate nelle sotto-domande. Si noti che mentre nel caso delle *Folder* non ci sarà alcun effetto sull'intervista, nel caso delle *Grouped questions* e dei *Grouped inputs* le domande raggruppate verranno mostrate nella stessa pagina. L'area dedicata alla ``Question`` delle raggruppate sarà pertanto disattivata, lasciando spazio solo alle **label**. In assenza di queste, verrà mostrato il **titolo della domanda**. .. hint:: Questo tipo di soluzione è quindi adatto a domande molto affini, e che richiedono etichette molto corte (es: raccolta dei dati anagrafici, con domande "nome", "cognome", "codice fiscale", ecc) Grids ----- Permette di inserire una griglia. L'unica opzione possibile è l'utilizzo dell'``evaluationGrid``, che consente all’intervistato di valutare un elenco di aspetti in base ad un sistema di valutazione proposto. Le modalità di definizione di questo widget sono descritte nell'apposita sezione di documentazione `evaluationGrid `_ .. image:: /_static/images/srvy/srvy_questions/evaluation_grid.png :width: 1200px :align: center .. hint:: Per le scelte vale lo stesso discorso fatto in precedenza. Si consiglia di utilizzare simboli o stringhe molto corte, questo per una migliore resa sui dispositivi mobile Special ------- È una classe particolare di pagina, non si tratta di vere e proprie domande ma di una serie di strumenti per modificare il percorso dell'utente nell'intervista: - ``Alert``, per sollevare un alert al verificarsi di una certa condizione - ``Jump``, per saltare ad una determinata domanda invece che continuare con la sequenza - ``End``, per terminare immediatamente l’intervista - ``Error``, per segnalare un errore .. hint:: È obbligatorio identificare una **domanda di tipo End** al termine del sondaggio. Questa può essere usata per invitare a effettuare un controllo sulle risposte date, dal momento che dopo questo punto non sarà più possibile tornare indietro e verrà solo visualizzato il messaggio di Fine. .. raw:: html
**Parametri:** +------------------------+------+--------------------------------------------------+ | Nome parametro | Tipo | Descrizione | +========================+======+==================================================+ |Label |T |Etichetta che comparirà accanto al widget di | | | |inputazione (es: Nome) | +------------------------+------+--------------------------------------------------+ |Width |T |La larghezza del campo (es: 10em) | +------------------------+------+--------------------------------------------------+ |Height |T |L'altezza del campo (es: 50px) | +------------------------+------+--------------------------------------------------+ |Help |T |Testo del tooltip, che verrà presentato come | | | |istruzione di aiuto al compilatore | +------------------------+------+--------------------------------------------------+ | *Text e Long text Parameters* | +------------------------+------+--------------------------------------------------+ |Character_limits |T |Permette di specificare un numero massimo di | | | |caratteri | +------------------------+------+--------------------------------------------------+ | *Choice Parameters* | +------------------------+------+--------------------------------------------------+ |Widget |T |Permette di indicare il widget (radio vs select) | +------------------------+------+--------------------------------------------------+ | *Number Parameters* | +------------------------+------+--------------------------------------------------+ |Format |T |Il format del numero (es: #.###,00) | +------------------------+------+--------------------------------------------------+ |Min |L |Il minimo valore accettato come risposta | +------------------------+------+--------------------------------------------------+ |Max |L |Il massimo valore accettato come risposta | +------------------------+------+--------------------------------------------------+ | *evaluationGrid Parameters* | +------------------------+------+--------------------------------------------------+ |Options |T |Le coppie codice:etichetta per le colonne di | | | |valutazione dell'evaluationGrid (es: | | | |1:Poor,2:Average,3:Good,4:Great) | +------------------------+------+--------------------------------------------------+ |Options_aggregator |T |L’aggregatore da utilizzare per gli elementi di | | | |ogni riga, se è possibile avere più valori (es: | | | |”,” o ”+”) | +------------------------+------+--------------------------------------------------+ |Options_caption |T |Permette di specificare un'etichetta che verrà | | | |posta sopra alle opzioni da valutare | +------------------------+------+--------------------------------------------------+ |Value_type |T |Permette di specificare il dtype del valore | | | |(Integer o Text) | +------------------------+------+--------------------------------------------------+ |showValue |B |Se impostato a True permetterà di aggiungere una | | | |colonna automatica di somma/moltiplicazione (o | | | |semplice visualizzazione) dei voti assegnati nella| | | |riga | +------------------------+------+--------------------------------------------------+ |Choice_width |T |Permette di specificare la larghezza delle colonne| | | |dei fields (es: choice_width=”6em”) | +------------------------+------+--------------------------------------------------+ |Value_width |T |Permette di specificare la larghezza delle colonne| | | |dei values, mostrata con showValue=True (es: | | | |value_width=”2em”) | +------------------------+------+--------------------------------------------------+ |Totalize |B |Se impostato a True, verrà totalizzata la somma | | | |dei valori inseriti (disponibile solo se | | | |dtype='L') | +------------------------+------+--------------------------------------------------+ .. sectionauthor:: Davide Paci