Actions

Structura sondajului Valoare separată cu tabele

From LimeSurvey Manual

This page is a translated version of the page Tab Separated Value survey structure and the translation is 100% complete.


Import și export cu valori separate prin file ale structurii sondajului

Această caracteristică este concepută pentru a facilita utilizarea unui software pentru foi de calcul precum LibreOffice, Excel sau Google Docs pentru a crea și edita chestionare. Elimină complet dependența de codurile SGQA.

Această caracteristică acceptă importul din fișiere TSV (Tabula Separated Value) codificate ASCII sau UTF-8 care au extensia .txt.


Template:Notă


Noțiuni introductive

Cea mai simplă modalitate este de a efectua un sondaj existent și de a-l exporta în format Valoare separată prin tabulatori. Folosiți butonul normal de export pentru sondaj și, în loc să selectați formatul .lss, selectați „Format valori separate prin tabele (*.txt)”. Acesta va fi salvat ca un fișier cu valori separate prin file în formatul adecvat (fișier Unicode delimitat prin file), cu toate titlurile de coloană corecte.

Orice software pentru foi de calcul care acceptă valori separate prin file este în regulă (de exemplu, OpenOffice sau LibreOffice). LimeSurvey ignoră orice formatare din foaia de calcul, dar nu ezitați să adăugați unele dacă vă ajută.

Rețineți că fișierul exportat este în format UTF-8, cu marca de ordine a octetilor (BOM) ca primele trei caractere (ascunse). Dacă faceți dublu clic pe .txt și încercați să îl deschideți direct cu Excel, acesta nu se va deschide corect deoarece Excel nu își dă seama că este formatat UTF-8. Pentru a deschide aceste fișiere cu Excel, deschideți mai întâi Excel, apoi selectați File:Open, selectați fișierul .txt și spuneți Excel că folosește codificarea UTF-8.

Va exista câte un rând pentru fiecare grup, întrebare, subîntrebare și răspuns. Există, de asemenea, rânduri pentru variabilele sondajului global și pentru variabilele sondajului specifice limbii. Prima limbă va fi listată, urmată de orice limbă secundară. Deci, dacă există mai multe limbi, va apărea mai întâi întregul conținut al limbii de bază (de exemplu, toate grupurile, întrebările, subîntrebările și răspunsurile). Aceasta va fi urmată de o copie tradusă pentru fiecare limbă secundară (cu exact același număr și ordine sau rânduri pentru setul tradus).

Relațiile sunt deduse prin proximitate. Deci, întrebările care urmează unui grup fac parte din acel grup; subîntrebările care urmează unei întrebări fac parte din acea întrebare, iar răspunsurile care urmează după o întrebare fac parte din întrebarea respectivă. Astfel, nu trebuie să cunoașteți ID-urile (gid, qid, sqid) pentru orice întrebări. Acestea vor fi calculate automat la import. De fapt, acest format nu folosește deloc gid, qid sau sqid (sau coduri SGQA).


Sfaturi

Scopul importului/exportului cu valori separate prin file este să vă permită să vă proiectați rapid sondajul folosind o foaie de calcul. Ne așteptăm să importați frecvent foaia, să verificați valabilitatea acesteia folosind funcția „Afișați logica sondajului” și să o testați. De fiecare dată când îl importați, veți primi un nou sondaj. Deci, s-ar putea să ajungeți cu multe sondaje parțial dezvoltate, dar asta este în regulă. Obișnuiește-te să ții evidența care este cel mai recent sau șterge-l pe cel vechi după ce le importați pe cele noi. Întrucât nu utilizați niciodată coduri SGQA în Valoare separată de file, nu trebuie să vă faceți griji cu privire la codurile atribuite de LimeSurvey pentru cheile primare de sondaj, grup, întrebări și răspunsuri. Deci, nu ezitați să importați și să exportați ori de câte ori doriți.

Iată câteva lucruri convenabile pe care le puteți face cu această abordare a instrumentelor de creație:

  1. Utilizați aceleași răspunsuri pentru multe întrebări. Doar copiați rândurile „A” și lipiți după fiecare întrebare care ar trebui să aibă același set.
  2. Folosiți aceleași subîntrebări pentru multe întrebări. Doar copiați rândurile „SQ” și lipiți-le după fiecare întrebare care are nevoie.
  3. "Looping" - utilizați același grup de mai multe ori. După ce grupul este așa cum doriți, copiați-l de câte ori este necesar. Utilizați filtrarea Excel pentru a vizualiza doar rândurile „G” (pentru grupuri) și utilizați funcția de tragere a coloanei Excel pentru a actualiza ecuațiile de relevanță pentru fiecare grup (de exemplu, pentru un recensământ, prima relevanță ar putea fi „numPeople > 1”, următorul ar trebui să fie „numPeople > 2”. Funcția de glisare va actualiza automat numărul). Filtrați după rândurile „Q” și asigurați-vă că fiecare întrebare are o valoare unică (de exemplu, să spuneți că vă denumiți variabilele g1_q1, g1_q2, g1_qN, utilizați find/replace pentru a converti g1 în g2 al doilea grup; g3 pentru al treilea etc.) .
  4. Reordonarea întrebărilor/grupurilor. Pur și simplu reordonați rândurile fișierului tabelar.
  5. Testarea modulelor de sondaj. Pentru sondaje lungi, poate doriți să împărțiți testarea în module. Pur și simplu creați noi fișiere foaie de calcul pentru fiecare modul, ștergând toate rândurile de care nu aveți nevoie. Acest lucru evită nevoia de a introduce multe date pentru a testa secțiunile ulterioare ale sondajului.
  6. Testarea întrebărilor obligatorii. O plângere comună nu este necesitatea de a face multe întrebări obligatorii, ci nevoia de a dezactiva caracteristica obligatorie pentru testare. Pur și simplu creați foaia de calcul principală cu setarea obligatorie la valorile finale dorite. Apoi, pentru a-l testa, ștergeți coloana „obligatorie” și salvați versiunea de testare a foii de calcul. Când importați acea versiune, niciuna dintre întrebări nu va fi obligatorie. După ce ați terminat testarea, importați copia principală.
  7. Setarea setărilor implicite. În loc să utilizați interfața grafică, puteți introduce orice setări implicite dorite în coloana implicită. Acest lucru este util în special pentru cazurile în care GUI nu vă permite să introduceți valoarea dorită, cum ar fi expresii pentru a seta valoarea implicită pentru elementele din listă (cum ar fi popularea unei liste de la un participant la sondaj).
  8. Traducere. Puteți crea copii ale foii de calcul - una pentru fiecare limbă. Includeți toate rândurile pentru limba principală, apoi copiați și inserați-le mai jos și folosiți tragerea pentru a schimba câmpul de limbă în limba țintă. Acestea pot fi distribuite traducătorilor dvs. și reintegrate într-un singur fișier foaie de calcul când sunt terminate.
  9. Setarea în bloc a atributelor avansate ale întrebării. Poate doriți ca toate ecuațiile dvs. să înceapă vizibile (astfel încât să le puteți vedea valorile pe măsură ce colectați date), dar apoi să le ascundeți pe toate înainte de a trece la producție. Pur și simplu filtrați foaia de calcul pe class = „Q” și tipul întrebării = „*” (ecuație) și setați always_hide la 1 pentru fiecare dintre acele întrebări. În mod similar, să spunem că după ce creați sondajul, decideți ce întrebări ar trebui să apară în statisticile publice. În loc să editați fiecare întrebare prin GUI, filtrați pe class = 'Q' și setați public_statistics = 1 pentru toate întrebările care ar trebui să fie vizibile în statistici.
  10. Găsiți și înlocuiți. Să presupunem că decideți că trebuie să schimbați o parte din formularea tuturor întrebărilor dvs., puteți utiliza Excel pentru a găsi și înlocui pentru a face acele modificări. În mod similar, să presupunem că decideți să faceți o redenumire în bloc a variabilelor dvs., găsirea și înlocuirea poate veni în ajutor. Dacă aveți nevoie de găsirea și înlocuirea bazată pe expresii regulate, puteți selecta coloana dorită, puteți copia într-un editor de text, puteți căuta și înlocui și lipiți coloana înapoi în foaia de calcul.
  11. 'Obținerea aprobărilor '. Dacă faceți cercetări, este posibil să aveți un consiliu de evaluare instituțională care insistă să vadă textul întrebărilor. Aceasta poate fi o modalitate convenabilă de a-l partaja. La fel și pentru discuțiile cu un client.
  12. Consens de echipă. Dacă încercați să convingeți un grup să cadă de acord cu privire la formularea sau aspectul unei întrebări sau al unui grup, puteți să creați rapid prototipuri / editați foaia de calcul, să o importați și să arătați echipei (prin întrebare sau previzualizare de grup) exact ceea ce vor vedea utilizatorii. . În acest fel, puteți obține aprobarea echipei înainte de a părăsi sala, în loc să trebuiască să documentați cerințele, să le construiți și să obțineți aprobarea la întâlnirile viitoare.
  13. Actualizarea de la alte formate de sondaj. Dacă sondajul dvs. este în format XML, Word sau alt format, puteți crea un proces de traducere pentru a le mapa la acest format. Deși ați putea încerca și maparea în formatul .lss, avantajul acestui format este că nu vă necesită să urmăriți relațiile cheie străine dintre grupuri, întrebări, subîntrebări, răspunsuri și valori implicite.


Limitări

  1. Din proiect, această caracteristică funcționează corect numai pentru sondajele care utilizează denumirea qcode (mai degrabă decât SGQA). Această caracteristică presupune că numele variabilelor (identificatorii întrebărilor) sunt unice pe tot parcursul sondajului. Numele subîntrebărilor pot fi repetate, atâta timp cât sunt unice în sfera unei anumite întrebări.


Format fișier

General

Folosim același set de titluri de coloane pentru mai multe scopuri. Primele 14 coloane servesc scopuri diferite în funcție de tipul de entitate (de exemplu, grup, întrebare, răspuns). Coloanele rămase sunt o listă alfabetică a numelor câmpurilor bazei de date pentru codurile de întrebări avansate. Mai jos este sintaxa pentru fiecare tip de entitate

Primele 14 coloane sunt:

  1. id (New in 3.14.0 )
  2. related_id (New in 3.14.0 )
  3. class
  4. type/scale
  5. nume
  6. relevanță
  7. text
  8. ajutor
  9. limbă
  10. validare
  11. obligatoriu
  12. altele
  13. default
  14. same_default
 Hint: Columnele id și related_id sunt folosite numai pentru cotă și sunt opționale. Dacă nu aveți cotă, puteți elimina direct aceste 2 coloane.


Parametri globali de sondaj

Există un rând pe parametru în tabelul de anchete.

  1. class => 'S'
  2. name => numele câmpului bazei de date
  3. text => valoare


Parametri specifici limbajului sondajului

Există un rând pe câmp pentru fiecare limbă în tabelul sondaje_setare limbi. Toate intrările pentru o anumită limbă sunt colectate înainte de a face inserarea în acel tabel.

  1. class => 'SL'
  2. name => numele câmpului bazei de date
  3. text => valoare
  4. language = > limba


Grupuri

Un rând de grup pentru fiecare limbă de sondaj (de exemplu, ar exista 3 rânduri de grup dacă sondajul are 3 limbi).

  1. id => identificator numeric unic pentru grup, începând cu numărul 1, utilizați același ID pentru limbi suplimentare aparținând grup curent
  2. class => 'G'
  3. name => nume_grup -- identificatorul unic pentru grup
  4. relevance => grelevance -- ecuația relevanței la nivel de grup, fără acolade
  5. text => description -- descrierea specifică limbii a grupului
  6. language => language -- limba grupului (de exemplu, „en”)


Întrebări

Un rând de întrebări pentru fiecare limbă a sondajului (de exemplu, ar exista 3 rânduri de întrebări dacă sondajul are 3 limbi). Se presupune că întrebările aparțin grupului care le precede.

  1. id => identificator numeric unic pentru întrebare, începând cu numărul 1, utilizați același ID pentru limbi suplimentare aparținând întrebării curente
  2. class => ' Q'
  3. type/scale => tip -- (de obicei, o literă) tip de întrebare (de exemplu, „M” este cu alegere multiplă)
  4. name => titlu -- nume unic al întrebării (rădăcina sistemului de denumire qcode)
  5. relevanță => relevanță -- ecuația relevanței pentru întrebare
  6. text => întrebare -- limbajul -textul specific al întrebării
  7. help => ajutor -- textul de ajutor specific limbii
  8. language => language -- limba pentru grup (de exemplu, „en”)
  9. validation = > preg -- criteriile opționale de validare a expresiei regulate pentru întrebare
  10. obligatoriu => obligatoriu -- „Y” dacă este obligatoriu
  11. other => other -- „Y” dacă opțiunea „Alt” ar trebui să fie disponibilă (numai pentru unele tipuri de întrebări)
  12. default => implicit -- dacă este setată, această valoare este inserată în tabelul cu valori implicite pentru această întrebare
  13. same_default => same_default -- „Y” pentru adevărat, caz în care orice valoare implicită setată pentru limba principală se aplică altor limbi


Subîntrebări

Un rând de subîntrebări pentru fiecare limbă a sondajului. Se presupune că subîntrebările aparțin întrebării care le precede.

  1. id => același identificator numeric unic care este folosit pentru întrebări. Subîntrebările ar trebui să utilizeze următoarea valoare disponibilă, ID-urile întrebării și subîntrebării ar trebui să fie diferite (de exemplu, utilizați ID-ul 1 pentru întrebare și ID-urile 2, 3 și 4 pentru subîntrebările aparținând întrebării 1, ID-ul următoarei întrebări ar trebui să fie 5 și așa mai departe). Utilizați același ID de subîntrebare pentru limbi suplimentare aparținând subîntrebărilor curente.
  2. class => 'SQ'
  3. type/scale => scale_id -- 0 sau 1, în funcție de tipul întrebării (de exemplu, textul matricei va avea două scale)
  4. name => titlu -- „numele” subîntrebării, de exemplu cel folosit pentru exclude_all_others
  5. relevance => relevanță -- (Viitor) pentru a sprijini relevanța la nivel de subîntrebare
  6. text => întrebare -- textul specific limbii subîntrebării
  7. help => ajutor -- (Viitorul) pentru a sprijini ajutorul la nivel de subîntrebare
  8. language => language -- limba pentru subîntrebare
#validation => preg -- (Viitorul) pentru a sprijini validarea expresiilor regulate la nivel de subîntrebare (de exemplu, pentru părți de adresă)
  1. obligatoriu => obligatoriu -- (Viitor) pentru a sprijini la nivel de subîntrebare obligatoriu (de exemplu, faceți doar câteva subîntrebări obligatoriu)
  2. default => implicit -- dacă este setată, aceasta este valoarea implicită pentru subîntrebare (inserată în tabelul cu valori implicite)
  3. same_default => same_default -- dacă este setată, atunci implicită pentru limba principală este folosit pentru toate celelalte limbi


Răspunsuri

Un rând de răspuns pentru fiecare limbă a sondajului (de exemplu, ar fi 3 rânduri de răspunsuri dacă sondajul are 3 limbi). Se presupune că răspunsurile aparțin întrebării care le precede și sunt în ordinea de sortare dorită.

  1. id => utilizați același ID ca și ID-ul întrebării căreia îi aparține
  2. class => 'A'
  3. type/scale => scale_id -- 0 sau 1 (de exemplu, pentru scară duală)
  4. name => cod -- identificatorul unic de răspuns
  5. relevance => evaluare_valoare -- dacă utilizați opțiunea de evaluare , aceasta este valoarea de evaluare a răspunsului
  6. text => răspuns -- textul specific limbii răspunsului
  7. language => language -- limba pentru acest răspuns (de exemplu, „en”)


Evaluări

Un rând de evaluare pentru fiecare limbă a sondajului (de exemplu, ar exista 3 rânduri de evaluare dacă sondajul are 3 limbi). Evaluările sunt scrise la sfârșitul fișierului.

  1. id => identificatorul numeric unic pentru evaluare, începând cu numărul 1, utilizați același ID pentru limbile suplimentare aparținând evaluării curente
  2. related_id => id-ul grupului către căruia îi aparține evaluarea curentă
  3. class => 'AS'
  4. type/scale => sfera de evaluare: T-Total, G-grup
  5. name => nume
  6. text => mesaj
  7. min_num_value => Minimum
  8. max_num_value => Maximum
  9. language => language -- limba pentru acest răspuns (ex. „en”)


Cote

Un rând pe cotă. Cotele sunt scrise la sfârșitul fișierului.

  1. id => identificatorul numeric unic pentru cotă, începând cu numărul 1
  2. class => 'QTA'
  3. name => numele cotei
  4. obligatoriu => limită
  5. other => acțiune cotă
  6. default => activ
  7. same_default => încărcare URL automată


Setări de limbă pentru cote

Un rând de cotă pentru fiecare limbă de sondaj. Se presupune că setările de limbă a cotei aparțin cotei care le precede.

  1. id => identificator numeric unic pentru setările de limbă a cotei, începând cu numărul 1. Fiecare rând pentru diferite limbi ale sondajului ar trebui să aibă ID-uri diferite
  2. related_id => ID-ul cotei căreia îi aparține această setare
  3. class => 'QTALS'
  4. relevance => mesaj
  5. text => URL
  6. help => Descriere URL
#language => language -- limba pentru această cotă (de exemplu, „en”)


Membrii cotei

Un rând pentru fiecare membru al cotei, nu depinde de limbă. Rândul de membru al cotei trebuie plasat imediat după întrebarea la care se referă. Se presupune că membrii cotei aparțin întrebării care îi precede.

  1. id => identificatorul numeric unic pentru membrii cotei, începând cu numărul 1
  2. related_id => id-ul cotei căreia îi aparține acest membru! N!#class => 'QTAM'
  3. name => cod de răspuns


Condiții

Un rând pe condiție, nu depinde de limbă. Rândul de condiție trebuie plasat imediat după întrebarea la care se referă. Se presupune că condițiile aparțin întrebării care le precede.

  1. id => identificatorul numeric unic pentru condiție, începând cu numărul 1.
  2. related_id => id-ul întrebării înrudite, dacă este cazul
  3. class => 'C'
  4. type/scale => scenariu
  5. name => numele câmpului răspuns
  6. relevance => operator de comparație
  7. text => răspuns așteptat