Actions

Tab Separated Value survey structure/ro: Difference between revisions

From LimeSurvey Manual

(Created page with "Această caracteristică acceptă importul din fișiere TSV (Tabula Separated Value) codificate ASCII sau UTF-8 care au extensia .txt.")
(Created page with "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ăr...")
 
(36 intermediate revisions by the same user not shown)
Line 11: Line 11:




{{Note|Check out the following [https://account.limesurvey.org/about-limesurvey/surveyhelp/2125-creating-limesurvey-questionnaires-in-excel example] to get a better understanding of this functionality.}}
{{Notă|Consultați următorul [https://account.limesurvey.org/about-limesurvey/surveyhelp/2125-creating-limesurvey-questionnaires-in-excel example] pentru a înțelege mai bine această funcționalitate.}}




=Getting Started=
=Noțiuni introductive=




The easiest way is to take an existing survey and export it in Tab Separated Value format. Use the normal export survey button, and instead of selecting .lss format, select "Tab Separated Values format (*.txt)". It will be saved as a Tab Separated Value file in the proper format (tab delimited unicode file), with all the correct column headings.
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.


Any spreadsheet software that supports tab separated values is fine (e.g., OpenOffice or LibreOffice). LimeSurvey ignores any formatting within the spreadsheet, but feel free to add some if it helps you.
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ă.


<div class="simplebox">Note that the exported file is in UTF-8 format with the Byte Order Mark (BOM) as the first three (hidden) characters. If you double click on the .txt and try to open it directly with Excel, it will not open properly because Excel does not realize that it is UTF-8 formatted. To open these files with Excel, first open Excel, then select File:Open, select the .txt file, and tell Excel that it is using UTF-8 encoding.</div>
<div class="simplebox">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.</div>


There will be one row for each group, question, subquestion, and answer. There are also rows for global survey variables, and for language-specific survey variables. The primary language will be listed first, followed by any secondary languages. So, if there are multiple languages, the entire contents of the base language will appear first (e.g., all groups, questions, subquestions, and answers). This will be followed by a translated copy for each secondary language (with exactly the same number and order or rows for the translated set).
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).


Relationships are inferred by proximity. So, questions following a group are part of that group; subquestions following a question are part of that question, and answers following a question are part of that question. Thus, you don't need to know the IDs (gid, qid, sqid) for any questions. Those will be computed automatically upon import. In fact, this format does not use gid, qid, or sqid (or SGQA codes) at all.
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).




=Tips=
=Sfaturi=




The goal of the Tab Separated Value import/export is to let you rapidly design your survey using a spreadsheet. We expect that you will frequently import the sheet, check its validity using the "Show Survey Logic" feature, and test it. Each time you import it, you will get a new survey. So, you might end up with many partially developed surveys, but that is fine. Just get in the habit of keeping track of which is the most recent, or delete the old one after you import the new ones. Since you never use SGQA codes in the Tab Separated Value, you never need to worry about what codes LimeSurvey assigns for the primary survey, group, question and answer keys. So, feel free to import and export as often as you like.
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.


Here are some convenient things you can do with this approach to authoring instruments:
Iată câteva lucruri convenabile pe care le puteți face cu această abordare a instrumentelor de creație:
#'''Use same Answers for many questions'''. Just copy the 'A' rows and paste after each question that should have the same set.
#'''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.
#'''Use same subquestions for many questions'''. Just copy the 'SQ' rows and paste them after each question that needs it.
#'''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.
#'''"Looping" - use same group many times'''. After the group is the way you want it, copy it as many times as needed. Use Excel filtering to view just the 'G' rows (for groups), and use the Excel column drag feature to update the relevance equations for each group (e.g., for a census, the first relevance might be "numPeople > 1", the next should be "numPeople > 2". The drag feature will auto-update the number). Filter by 'Q' rows and ensure that each question has a unique value (e.g., say you name your variables g1_q1, g1_q2, g1_qN, use find/replace to convert g1 to g2 the second group; g3 for the third, etc.).
#'''"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.) .
#'''Re-ordering questions/groups'''. Simply re-order the rows of the spreadsheet file.
#'''Reordonarea întrebărilor/grupurilor'''. Pur și simplu reordonați rândurile fișierului tabelar.
#'''Testing survey modules'''. For long surveys, you may want to break up the testing into modules. Simply create new spreadsheet files for each module, deleting any rows that you don't need. This avoids the need to enter lots of data to test later sections of the survey.
#'''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.
#'''Testing mandatory questions'''. A common complaint is not the need to make many questions mandatory, but the need to turn off the mandatory feature for testing. Simply create the master spreadsheet with mandatory set to the final desired values. Then, to test it, just delete the "mandatory" column and save the test version of the spreadsheet. When you import that version, none of the questions will be mandatory. After you have finished your testing, import the master copy.
#'''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ă.
#'''Setting defaults'''. Rather than using the GUI, you can enter any desired defaults in the default column. This is especially helpful for cases where the GUI does not let you enter the desired value, like [[ExpressionScript - Presentation|expressions]] to set the default for list items (like populating a list from a [[Survey participants|survey participant]] attribute).
#'''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 [[ExpressionScript - Prezentare|expresii]] pentru a seta valoarea implicită pentru elementele din listă (cum ar fi popularea unei liste de la un [[Participanți la sondaj|participant la sondaj]]).
#'''Translation'''. You can create copies of your spreadsheet - one per language. Include all the rows for the primary language, then copy and paste them below, and use drag to change the language field to the target language. These can be distributed to your translators, and re-integrated into a single spreadsheet file when they are done.
#'''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.
#'''Bulk setting of advanced question attributes'''. You may want all of your equations to start visible (so you can see their values as you collect data), but then hide them all before going to production. Simply filter the spreadsheet on class = 'Q' and question type = '*' (equation), and set always_hide to 1 for each of those questions. Similarly, say after you create the survey, you decide which questions should appear in public statistics. Rather than edit each question through the GUI, filter on class = 'Q', and set public_statistics = 1 for all of the questions that should be visible in statistics.
#'''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.
#'''Find and replace'''. Say you decide you need to change some phrasing across all of your questions, you can use Excel find and replace to make those changes. Similarly, say you decide to do a bulk-renaming of your variables, find and replace can come to the rescue. If you need regular-expression based find and replace, you can select the desired column, copy to a text editor, do your find and replace, and paste the column back into the spreadsheet.
#'''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.
#'''Gaining approvals'''. If you are doing research, you may have an Institutional Review board who insists upon seeing the text of the questions. This may be a convenient way to share it.  Similarly for discussions with a client.
#'''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.
#'''Team consensus'''. If you are trying to get a group to agree upon the wording or appearance of a question or group, you can rapidly prototype / edit the spreadsheet, import it, and show the team (via question or group preview) exactly what the users will see.  That way you can get approval from the team before they leave the room rather than having to document requirements, build them, and get approval at future meetings.
#'''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.
#'''Upgrading from other survey formats'''. If your survey is in XML, Word, or other format, you can create a translation process to map them to this format. Although you could also try mapping to the .lss format, the advantage of this format is that it doesn't require you to keep track of foreign key relationships between groups, questions, subquestions, answers, and defaults.
#'''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.




=Limitations=
=Limitări=
#By design, this feature only works properly for surveys that use qcode (rather than SGQA) naming. This feature assumes that variable names (question identifiers) are unique throughout the survey. Subquestion names can be repeated, as long as they are unique within the scope of a particular question.
#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.




=File Format=
=Format fișier=




Line 59: Line 59:




We use the same set of column headings for multiple purposes. The first 14 columns serve different purposes depending upon the type of entity (e.g., group, question, answer). The remaining columns are an alphabetical list of the database field names for the advanced question codes. Below is the syntax for each entity type
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


The first 14 columns are:
Primele 14 coloane sunt:
#id {{NewIn|3.14.0}}
#id {{NewIn|3.14.0}}
#related_id {{NewIn|3.14.0}}
#related_id {{NewIn|3.14.0}}
#class
#class
#type/scale
#type/scale
#name
# nume
#relevance
#relevanță
#text
#text
#help
#ajutor
#language
#limbă
#validation
#validare
#mandatory
#obligatoriu
#other
#altele
#default
#default
#same_default
#same_default


{{Hint|Text=Columns id and related_id are used only for quota and are optional. If you don't have quota, you can directly remove this 2 columns.}}
{{Hint|Text=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.}}


==Survey Global Parameters==
==Parametri globali de sondaj==




There is one row per parameter in the surveys table.
Există un rând pe parametru în tabelul de anchete.
#class => 'S'
#class => 'S'
#name => database field name
#name => numele câmpului bazei de date
#text => value
#text => valoare




==Survey Language-Specific Parameters==
==Parametri specifici limbajului sondajului==




There is one row per field per language in the surveys_languagesettings table. All entries for a given language are collected before doing the insert into that table.
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.
#class => 'SL'
#class => 'SL'
#name => database field name
#name => numele câmpului bazei de date
#text => value
#text => valoare
#language => language
#language = > limba




==Groups==
==Grupuri==




One group row per survey language (e.g., there would be 3 group rows if survey has 3 languages).
Un rând de grup pentru fiecare limbă de sondaj (de exemplu, ar exista 3 rânduri de grup dacă sondajul are 3 limbi).
#id => unique numeric identifier for the group, starting with number 1, use the same ID for additional languages belonging to current group
#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
#class => 'G'
#class => 'G'
#name => group_name -- the unique identifier for the group
#name => nume_grup -- identificatorul unic pentru grup
#relevance => grelevance -- the group-level relevance equation, without curly braces
#relevance => grelevance -- ecuația relevanței la nivel de grup, fără acolade
#text => description -- the language-specific description of the group
#text => description -- descrierea specifică limbii a grupului
#language => language -- the language for the group (e.g., 'en')
#language => language -- limba grupului (de exemplu, „en”)




==Questions==
==Întrebări==




One question row per survey language (e.g., there would be 3 question rows if survey has 3 languages). Questions are assumed to belong to the group that precedes them.
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.
#id => unique numeric identifier for the question, starting with number 1, use the same ID for additional languages belonging to current question
#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
#class => 'Q'
#class => ' Q'
#type/scale => type -- the (usually one letter) [[Question types|question type]] (e.g., 'M' is Multiple Choice)
#type/scale => tip -- (de obicei, o literă) [[Tipuri de întrebare|tip de întrebare]] (de exemplu, „M” este cu alegere multiplă)
#name => title -- the unique question name (the root of the qcode naming system)
#name => titlu -- nume unic al întrebării (rădăcina sistemului de denumire qcode)
#relevance => relevance -- the [[ExpressionScript - Presentation#Access_to_Variables|relevance equation]] for the question
#relevanță => relevanță -- [[ExpressionScript - Presentation#Access_to_Variables|ecuația relevanței]] pentru întrebare
#text => question -- the language-specific text of the question
#text => întrebare -- limbajul -textul specific al întrebării
#help => help -- the language-specific help text
#help => ajutor -- textul de ajutor specific limbii
#language => language -- the language for the group (e.g., 'en')
#language => language -- limba pentru grup (de exemplu, „en”)
#validation => preg -- the optional regular expression validation criteria for the question
#validation = > preg -- criteriile opționale de validare a expresiei regulate pentru întrebare
#mandatory => mandatory -- 'Y' if mandatory
#obligatoriu => obligatoriu -- „Y” dacă este obligatoriu
#other => other -- 'Y' if the "Other" option should be available (only for some question types)
#other => other -- „Y” dacă opțiunea „Alt” ar trebui să fie disponibilă (numai pentru unele tipuri de întrebări)
#default => default -- if set, this value is inserted into the defaultvalues table for this question
#default => implicit -- dacă este setată, această valoare este inserată în tabelul cu valori implicite pentru această întrebare
#same_default => same_default -- 'Y' for true, in which case any defaultvalue set for primary language applies to other languages
#same_default => same_default -- „Y” pentru adevărat, caz în care orice valoare implicită setată pentru limba principală se aplică altor limbi




==Subquestions==
==Subîntrebări==




One subquestion row per survey language. Subquestions are assumed to belong to the question that precedes them.
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.
#id => same unique numeric identifier which is used for the questions. Subquestions should use next available value, question and subquestion IDs should be different (e.g. use ID 1 for question and IDs 2, 3 and 4 for subquestions belonging to question 1, next question ID should be 5 and so on). Use the same subquestion ID for additional languages belonging to current subquestions.
#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.
#class => 'SQ'
#class => 'SQ'
#type/scale => scale_id -- 0 or 1, depending upon question type (e.g. array text will have two scales)
#type/scale => scale_id -- 0 sau 1, în funcție de tipul întrebării (de exemplu, textul matricei va avea două scale)
#name => title -- the "name" of the subquestion, e.g. the one used for exclude_all_others
#name => titlu -- „numele” subîntrebării, de exemplu cel folosit pentru exclude_all_others
#relevance => relevance -- (Future) to support subquestion-level relevance
#relevance => relevanță -- (Viitor) pentru a sprijini relevanța la nivel de subîntrebare
#text => question -- the language-specific text of the subquestion
#text => întrebare -- textul specific limbii subîntrebării
#help => help -- (Future) to support subquestion-level help
#help => ajutor -- (Viitorul) pentru a sprijini ajutorul la nivel de subîntrebare
#language => language -- the language for the subquestion
#language => language -- limba pentru subîntrebare
#validation => preg -- (Future) to support subquestion-level regular expression validation (e.g. for address parts)
#validation => preg -- (Viitorul) pentru a sprijini validarea expresiilor regulate la nivel de subîntrebare (de exemplu, pentru părți de adresă)
#mandatory => mandatory -- (Future) to support subquestion-level mandatory (e.g. make only a few subquestions mandatory)
#obligatoriu => obligatoriu -- (Viitor) pentru a sprijini la nivel de subîntrebare obligatoriu (de exemplu, faceți doar câteva subîntrebări obligatoriu)
#default => default -- if set, then this is the default value for the subquestion (inserted into defaultvalues table)
#default => implicit -- dacă este setată, aceasta este valoarea implicită pentru subîntrebare (inserată în tabelul cu valori implicite)
#same_default => same_default -- if set, then the default for the primary language is  used for all other languages
#same_default => same_default -- dacă este setată, atunci implicită pentru limba principală este folosit pentru toate celelalte limbi




==Answers==
==Răspunsuri==




One answer row per survey language (e.g., there would be 3 answer rows if survey has 3 languages). Answers are assumed to belong to the question that precedes them, and be in the desired sort order.
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ă.
#id => use the same ID as the ID of the question it belongs to
#id => utilizați același ID ca și ID-ul întrebării căreia îi aparține
#class => 'A'
#class => 'A'  
#type/scale => scale_id -- 0 or 1 (e.g. for dual-scale)
#type/scale => scale_id -- 0 sau 1 (de exemplu, pentru scară duală)
#name => code -- the unique answer identifier
#name => cod -- identificatorul unic de răspuns
#relevance => assessment_value -- if using assessment option, this is the assessment value for the answer
#relevance => evaluare_valoare -- dacă utilizați opțiunea de evaluare , aceasta este valoarea de evaluare a răspunsului
#text => answer -- the language-specific text of the answer
#text => răspuns -- textul specific limbii răspunsului
#language => language -- the language for this answer (e.g. 'en')
#language => language -- limba pentru acest răspuns (de exemplu, „en”)




==Assessments==
==Evaluări==




One assessment row per survey language (e.g., there would be 3 assessment rows if survey has 3 languages). Assessments are written at the end of file.
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.
#id => unique numeric identifier for the assessment, starting with number 1, use the same ID for additional languages belonging to current assessment
#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
#related_id => id of group to which current assessment belongs to
#related_id => id-ul grupului către căruia îi aparține evaluarea curentă
#class => 'AS'
#class => 'AS'
#type/scale => assessment scope: T-Total, G-group
#type/scale => sfera de evaluare: T-Total, G-grup
#name => name
#name => nume
#text => message
#text => mesaj
#min_num_value => Minimum
#min_num_value => Minimum
#max_num_value => Maximum
#max_num_value => Maximum
#language => language -- the language for this answer (e.g. 'en')
#language => language -- limba pentru acest răspuns (ex. „en”)




==Quotas==
==Cote==




One row per quota. Quotas are written at the end of file.
Un rând pe cotă. Cotele sunt scrise la sfârșitul fișierului.
#id => unique numeric identifier for the quota, starting with number 1
#id => identificatorul numeric unic pentru cotă, începând cu numărul 1
#class => 'QTA'
#class => 'QTA'
#name => quota name
#name => numele cotei
#mandatory => limit
#obligatoriu => limită
#other => quota action
#other => acțiune cotă
#default => active
#default => activ
#same_default => autoload URL
#same_default => încărcare URL automată




==Quota language settings==
==Setări de limbă pentru cote==




One quota row per survey language. Quota language settings are assumed to belong to the quota that precedes them.
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.
#id => unique numeric identifier for the quota language settings, starting with number 1. Each row for different survey languages should have different IDs
#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
#related_id => quota id of quota to which this setting belongs to
#related_id => ID-ul cotei căreia îi aparține această setare
#class => 'QTALS'
#class => 'QTALS'
#relevance => message
#relevance => mesaj
#text => URL
#text => URL
#help => URL description
#help => Descriere URL
#language => language -- the language for this quota (e.g. 'en')
#language => language -- limba pentru această cotă (de exemplu, „en”)




==Quota members==
==Membrii cotei==




One row per quota member, no language dependent. Quota member row should be placed immediately after question it relates to. Quota members are assumed to belong to the question that precedes them.
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.
#id => unique numeric identifier for the quota members, starting with number 1
#id => identificatorul numeric unic pentru membrii cotei, începând cu numărul 1
#related_id => quota id of quota to which this member belongs to
#related_id => id-ul cotei căreia îi aparține acest membru! N!#class => 'QTAM'
#class => 'QTAM'
#name => cod de răspuns
#name => answer code




==Conditions==
==Condiții==




One row per condition, no language dependent. Condition row should be placed immediately after question it relates to. Conditions are assumed to belong to the question that precedes them.
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.
#id => unique numeric identifier for the condition, starting with number 1.
#id => identificatorul numeric unic pentru condiție, începând cu numărul 1.
#related_id => question id of related question, if applicable
#related_id => id-ul întrebării înrudite, dacă este cazul
#class => 'C'
#class => 'C'
#type/scale => scenario
#type/scale => scenariu
#name => answer field name
#name => numele câmpului răspuns
#relevance => comparison operator
#relevance => operator de comparație
#text => expected answer
#text => răspuns așteptat

Latest revision as of 08:30, 6 November 2023


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