Actions

Setting conditions/sl: Difference between revisions

From LimeSurvey Manual

No edit summary
No edit summary
 
(309 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages /> __TOC__
<languages /> __TOC__


=Spremembe od verzije 1.92 naprej=


Od verzije 1.92 dalje se izvaja nadzor nad navigacijo in povezavami z [[Expression Manager/sl|Upravljalnikom izrazov]] (EM). Kljub temu še vedno lahko uporabljate urejevalnik pogojev kot je opisano spodaj. Vendar Upravljalnik izrazov pretvori pogoje v enačbo relevantnosti. LimeSurvey med anketiranjem prebira le le relevantne enačbe, s čimer odpravlja potrebo po večkratnem prebiranju podatkovne baze against the conditions table.
=Pregled pogojev v LimeSurvey-u=
**** ????? **************
 
 
LimeSurvey ima zelo zmogljivo funkcijo logičnega razvejanja. Do njega lahko dostopate s klikom na gumb '''Nastavi pogoje''' - [[Datoteka:conditions_icon.png]] - ki se nahaja na vsaki [[Možnosti orodne vrstice vprašanj|vrstici z vprašanji]].
 
V tem poglavju bomo opisali:
* katere pogoje lahko najdete v LimeSurvey
* kaj lahko in česa ne morete narediti s pogoji
* katere korake se morate naučiti za nastavitev preprostih ali bolj zapletenih pogojev
 
Za video navodila po korakih si oglejte [http://www.youtube.com/watch?v=oexr0z-eo9U to vadnico] ali prenesite vzorčno anketo o stanju: [[Media:LimeSurvey_Survey_Setting_Conditions.zip|LimeSurvey_Survey_Setting_Conditions.zip] ].
 
 
{{Hint|Text=Funkcije pogojev delujejo kot GUI za [[ExpressionScript - Presentation|izraze in enačbe, ki jih je mogoče uporabiti pri vprašanjih]], kar omogoča uporabnikom, da preprosto povečajo kompleksnost svojih anket, ne da bi se spuščali v izraze in ustreznost enačbe. Vendar pa je [[ExpressionScript - Predstavitev|ExpressionScript]] treba preučiti/poznati, da povečate obseg možnosti, ki so na voljo znotraj LimeSurvey.}}
 
 
==Skrij/prikaži razvejanje v primerjavi s preskočnim razvejanjem==
 
 
LimeSurvey vam omogoča izdelati logiko razvejanosti. Določite lahko, da bodo nekatera vprašanja prikazana le, če so izpolnjeni nekateri pogoji (primer: Prikaži vprašanje X, če je vprašanje Y bilo odgovorjeno z možnostjo Z).
 
Ideja je, da izvedemo "Prikaži/Skrij razvejanost podvprašanj":
* Pri vsakem vprašanju v anketi lahko definirate pogoj ali niz pogojev: vprašanje se prikaže, če je pogoj izpolnjen
 
 
<center>[[Datoteka:simple-condition-on-yes-question.png]]</center>
 
 
<div class='simplebox'>[[Datoteka:help.png]] Preprosto povedano:
* vprašanje brez definiranega pogoja bo vedno prikazano;
* vprašanje z definiranim pogojem ne bo prikazano, razen če je pogoj izpolnjen .</div>
 
Ta pristop se razlikuje od '''Jump Branching Logic''', ki ga včasih izvaja druga programska oprema. V '''Jump Branching Logic''' bi bilo dejanje, ki izhaja iz izpolnjenega pogoja, skok na drugo vprašanje (to je skrivanje vseh vmesnih vprašanj). '''LimeSurvey ne izvaja te metode Jump Branching Logic'''. Namesto tega, če želite preskočiti niz vprašanj, preprosto nastavite enak pogoj za vsa vprašanja, za katera ne želite, da so prikazana. Na primer, če je pogoj skoka, ki ga želite nastaviti pri vprašanju 2, »Skoči na vprašanje 5, če je odgovor na vprašanje 1 'Da'«, lahko preprosto:
*nastavite pogoj pri vprašanjih 2, 3 in 4, da se prikaže samo "če je bil odgovor na vprašanje 1 '''NE''' 'da'"
 
LimeSurvey poenostavi nastavitev enakega pogoja na več vprašanj (in s tem implementacijo '''Jump Branching Logic'''), saj vam omogoča, da "kopirate" pogoj iz enega vprašanja v vrsto drugih. V zgornjem primeru bi začeli z nastavitvijo pogoja za Vprašanje2, nato pa bi z istega zaslona ta pogoj kopirali v Vprašanje3 in Vprašanje4.
 
<div class='simplebox'>[[Datoteka:help.png]] Če želite izvedeti več podrobnosti o tem, kako lahko kopirate pogoje znotraj LimeSurvey, nadaljujte z branjem naslednjega [[Nastavitev pogojev#Kako kopirati pogoje|wiki razdelek]].</div>
 
 
==Veljavni tipi pogojev==
 
 
V bistvu lahko pogoj primerja vrednosti in vrne vrednost true ali false.
 
Vrednosti, ki jih lahko primerjamo, so '''odgovori na prejšnja vprašanja'''. Na primer, če na vprašanje 1 odgovorite z »Da«, bo anketirancu prikazano vprašanje 2:
 


Vendar ne potrebujete uporabljati urejevalnika pogojev. Če vam je ljubše, lahko enačbo relevantnosti vnesete ročno z qcode poimenovanjem.
<center>[[Datoteka:Questions_example_set_conditions_y.png]]</center>


Vse, kar lahko storite v urejevalniku pogojev je nadaljnja združljivost z enačbo relevance. Vendar vam EM omogoča dostop do več sto funkcij in matematičnih oziroma logičnih operatorjev, s katerimi lahko ustvarite kompleksne relevantne enačbe, ki pa jih ne moremo prenesti nazaj v urejevalnik pogojev.


<div class="simplebox">Opomba: Trenutno lahko domnevamo, da če ste vnesli vrednosti v urejevalnik pogojev, you want them to trump anything you ročno uredite v enačbi relevantnosti. Če želite uporabiti urejevalnik pogojev, da ustvarite prvi nabor relevantnih enačb in jih nato prilagoditi, morate najprej storiti naslednje:
<hr width="50%" style="margin:auto">  
#Ustvariti pogoje v urejevalniku pogojev tako kot ste to navajeni delati
#Shraniti pogoje - to vam bo prikazalo poudarjeno sintakso enačbe relevance za to vprašanje
#Označiti in kopirati to poudarjeno sintakso enačbe in jo prilepiti v urejevalnik besedila, npr. v beležko
#Ponovno odprite urejevalnik pogojev in izbrišite vse pogoje vprašanja (in shranite) - tako se vam bo prikazala enačba relevance
#Odprite urejevalnik vprašanja in prilepite prejšnjo relevantno enačbo iz beležke in ponovno shranite vprašanje (oziroma dokončno uredite enačbo relevance in jo nato shranite)</div>


The [[Expression Manager|Expression Manager]] documentation compares/contrasts conditions and relevance, especially [[Expression Manager|#How should I choose between Conditions and Relevance?|this table]].


=Pregled pogojev v LimeSurvey-u=
Na tej točki je zelo pomembno, da razumemo katero vstopno vprašanje je primerno za urejevalnik pogojev:
 
'''vprašalni vnos''' je bodisi:
* preprosto vprašanje (za vse vrste vprašanj razen vprašanj Array)
** na primer: besedilna vprašanja, radio ali spustni seznami in celo več izbir vprašanja
* ali vrstica v Array questions (razen za Array dual scale in Array multiple flexible questions)
** na primer: niz s 5 izbirnimi gumbi ali niz z vprašanji oznake
* ali bodisi levi del ali desni del vprašanja Array z dvojno lestvico
* ali vsaka celica Array prilagodljivega vprašanja
 
{{Opomba|Oglejte si naslednjo [[vrste vprašanj|povezavo]], če želite izvedeti več o vrstah vprašanj, ki so na voljo v LimeSurvey.}}
 
* '''konstantne vrednosti'''
** na primer: "Če ste na spodnje vprašanje odgovorili več kot 18 let"
 
 
<center>[[Datoteka:simple-condition-on-numerical-question.png]]</center>
 
 
* '''Podatki o profilu udeležencev:''' Če želite uporabiti podatke iz tabele udeležencev ankete, morate "Anonimizirani odgovori" nastaviti na '''NE'''. To možnost najdete na plošči ankete [[Nastavitve udeleženca|nastavitve udeleženca]].
 
 
<center>[[Datoteka:simple-condition-on-token.png]]</center>
 
 
<hr width="50%" style="margin:auto">
 
 
Podprtih je več primerjalnih operatorjev - od preprostega "enako" do naprednega "regularnega izraza":
* Osnovni se nanašajo na operaciji "enako" in "ni enako"
* ''večje/manjše Na voljo je tudi družina operatorjev than'' in se običajno uporablja pri uporabi številskih vnosov vprašanj
** Upoštevajte, da primerjave v številskih poljih uporabljajo številski vrstni red. Na primer, 2 < 10
** Če uporabljate vnos vprašanja, katerega vrsta je besedilo, je pogoj lahko ovrednoten kot "2" > "10" (vrstni red nizov)!
** Numerična vprašanja, kot tudi besedilna vprašanja (če imajo nastavljen atribut 'numbers_only'), bodo za primerjave uporabljali številski vrstni red
* Na voljo je tudi napredni primerjalni operator z uporabo regularnih izrazov (brez panike! Če ne veste kaj to pomeni, potem ga ne potrebujete)
** vzorca '''ni''' zapreti med znake '/'
** na primer: '''[a-zA -Z]$''
 
 
==Kako lahko združimo pogoje==
 
 
Sestavimo lahko '''kompleksne pogoje''' s '''kombinacijo preprostih pogojev''' z logičnimi operatorji '''IN''' in '''ALI'''.
 
 
<center>[[Datoteka:simple-conditions-combination.png]]</center>
 
 
Vendar je pomembno razumeti, da '''LimeSurvey samodejno določi, kateri logični operator naj uporabi'''. To pomeni, da je uporaba operatorjev '''ALI'' ali '''IN''' določena '''glede na kontekst''' pogoja. V zgornjem primeru je samo en scenarij. To pomeni, da LimeSurvey uporablja [https://en.wikipedia.org/wiki/Boolean_algebra Boolovo algebro], kar pomeni, da se operator '''or''' najprej "izračuna".
 
Več bomo govorili o zapletenih pogojih [[Nastavitev_pogojev#Uporaba scenarijev - Uporaba pogojev ORed med različnimi vprašanji|kasneje]]. Najprej se skupaj osredotočimo na osnovne.
 
==Dostop do urejevalnika==
 
 
Najprej morate dostopati do [[Možnosti orodne vrstice vprašanj#Orodne vrstice vprašanj|oblikovalnika pogojev]]. Če želite to narediti, kliknite na vprašanje, za katerega želite uporabiti pogoj:
 
 
<center>[[Datoteka:Question designer search question.png]]</center>
 
 
Zdaj poiščite gumb '''Nastavi pogoje''', ki se nahaja v zgornji vrstici z vprašanji:
 
 
<center>[[File:Question designer set conditions.png]]</center>
 
 
Ko dostopate, se prikaže naslednja stran:
 
 
<center>[[Datoteka: Question designer top.png]]</center>
 
 
Ploščo oblikovalca pogojev lahko razdelimo na tri dele:
* [[Nastavitev pogojev#Orodna vrstica oblikovalca pogojev|Orodna vrstica oblikovalca pogojev]]
* [[Nastavitev pogojev#Pregled obstoječih pogojev|Trenutno obstoječe vprašanje pogoji]]
* [[Nastavitev pogojev#Dodaj/uredi pogoje|Dodaj/uredi meni pogojev]]
 
 
==Orodna vrstica oblikovalca pogojev==
 
 
V orodni vrstici lahko najdete naslednje možnosti:
 
 
<center>[[File:Show conditions designer toolbar.png]]</center>
 
 
*''''Pokaži pogoje za to vprašanje'''': Kliknite na ta gumb, da dobite hiter pregled trenutnih obstoječih pogojev, ki veljajo za vaše vprašanje.
 
*''''Dodaj in uredi pogoje'''': Predstavlja privzeto stran, ki se samodejno odpre, ko kliknete gumb '''Nastavi pogoje'''. Razdeljen je na dva dela: (1) tabelo, ki prikazuje vse obstoječe pogoje in scenarije, in (2) [[Nastavitev pogojev#Dodaj/Uredi pogoje|meni za dodajanje/urejanje pogojev]].
 
*''''Pogoji kopiranja'''': Včasih želite uporabiti isti pogoj za X vprašanj, da se vprašanjeY prikaže na koncu. Za to kliknite '''Kopiraj pogoje'''. Odprlo se bo novo okno, ki prikazuje trenutne obstoječe pogoje, dodane vašemu vprašanju (recimo mu vprašanje3). Če jih želite dodati v vprašanje5, označite želene pogoje, ki jih želite kopirati, izberite vprašanje5 in kliknite na gumb '''Kopiraj pogoje''', ki se nahaja v spodnjem levem delu plošče. Za nadaljnje informacije nadaljujte z branjem naslednjega [[Nastavitev pogojev#Kako kopirati pogoje|wiki razdelek]].
 
*''''Shrani in zapri''': Ko končate s spremembami, kliknite '''Shrani in zapri''', da shranite svoje pogoje.
 
*''''Premakni se na vprašanje'''': Da ne bi zapustili plošče oblikovalca pogojev, ko se premikate na drugo vprašanje, uporabite naslednjo možnost, da s spustnega seznama izberete naslednje vprašanje, za katerega želite uporabiti pogoje. Upoštevajte, da spustni seznam prikazuje vprašanja, ki so prikazana v anketi pred in za trenutnim vprašanjem.
 
*''''Zapri'''': Če želite zapustiti ploščo brez kakršnih koli sprememb, lahko greste neposredno na zavihek z nastavitvami/strukturo in izberete želeno možnost ali kliknete '''Zapri''', ki se nahaja v zgornjem desnem kotu zaslona.
 
 
==Pregled obstoječih pogojev==
 
 
V tem razdelku je prikazana tabela, ki vsebuje vse obstoječe scenarije in pogoje vprašanja. Nekatera dejanja je mogoče izvesti od tu:
 
 
<center>[[FIle:Show conditions for this questions pic.png]]</center>
 
 
*V zgornjem desnem delu so na voljo tri akcije:
**Hitro dodajanje pogojev - pospeši postopek dodajanja pogojev (preberite [[Nastavitev pogojev#Dodaj/Uredi pogoje|spodaj]], če želite izvedeti več o vseh možnostih )
**Preštevilči scenarije - če kliknete, bodo scenariji preštevilčeni z inkrementalnimi številkami, ki se začnejo od ena. Upoštevajte, da je ta možnost prikazana le, če sta za vaše vprašanje uporabljena dva ali več scenarijev.
**Izbriši vse pogoje - s tem dejanjem lahko izbrišete vse trenutne obstoječe pogoje in scenarije, uporabljene za vaše vprašanje.
 
 
<center>[[FIle:Conditions designer quickadd and delete.png]]</center>
 
 
*Poleg ID številke vsakega scenarija so trije gumbi, ki vam omogočajo izvajanje naslednjih dejanj:
**Izbriši scenarij
**Spremeni številko scenarija
**Dodaj pogoj temu scenariju - kliknite to gumb za dodajanje drugega pogoja želenemu scenariju
 
 
<center>[[FIle:Conditions Designer table scenarios.png]]</center>
 
 
*Za vsak pogoj je mogoče izvesti dve dejanji:
**Izbriši pogoj
**Uredi pogoj - če kliknete, boste lahko uredili pogoj iz [[Nastavitev pogojev#Dodaj/Uredi pogoje|menija pogojev ]]
 
 
<center>[[FIle:Conditions Designer table conditions.png]]</center>
 
==Dodaj/Uredi pogoje==
 
 
Spodnji del zaslona je dodeljen meniju Dodaj/uredi pogoje:
 
 
<center>[[Datoteka:Add_edit_condition_q.png]]</center>
 
 
<div class='simplebox'>Pogoj lahko uredite tudi z istega mesta, če ste pred tem pritisnili na zeleni svinčnik, ki ustreza vprašanju, ki ga želite urediti (glejte [[Nastavitev pogojev#Pregled obstoječih pogojev|tabelo pogojev in scenarijev]]).</div>
 
Da bi razumeli, kako funkcija pogojev deluje v LimeSurvey, bomo najprej predstavili osnovne pogoje.
 
 
Opomba: v tem trenutko ne spreminjajmo privzetega scenarija ([[File:default_scenario.png]]), ki je samodejno izbran v tem pogojnem obrazcu; več o tem kasneje.
 
 
==Opredelitev osnovnih elementov==
 
 
Osnovni pogoj je edini pogoj brez dodatnih logičnih operaterjev IN ali ALI.
 
Sestavljajo ga:
* levi operand: ''vrednost, ki jo preverjamo''
** vrednost, ki jo preverjamo, označimo tako, da izberemo ustrezen jeziček v urejevalniku pogoja
 
 
<center>[[Datoteka:edit-conditions-testedvalueTab.png]]</center>
 
 
Če izberete vnos vprašanja (na zavihku '''Prejšnja vprašanja''') in če to vprašanje uporablja vnaprej določene odgovore, potem so ustrezni vnaprej določeni odgovori prikazani pod zavihkom '''Prednastavljeno''' izbora primerjalne vrednosti.
 
 
<div class='simplebox'>[[Datoteka:help.png]] Upoštevajte, da mora vaša anketa za uporabo žetona:
*ne uporabljati [[Nastavitve udeležencev|anonimnih odgovorov]]
*uporabljati [[Udeleženci ankete|tabelo udeležencev ankete ]] in [[Nastavitve udeležencev|zaprt dostop]].</div>
 
 
* "operator primerjave". Na spustnem seznamu izberite »operator primerjave«, ki ga želite uporabiti (»manj kot«, »manj kot ali enako«, »je enako«, »ni enako«, '' večje ali enako'', ''večje kot'', ''[[ExpressionScript - Predstavitev|regularni izraz]]'').
 
 
* desni operand: ''primerjalna vrednost''. Tip ''primerjalne vrednosti'' lahko izberete z izbiro ustreznega zavihka v urejevalniku pogojev. Ko ustvarite pogoj, lahko kot primerjalno vrednost izberete vnaprej določeno vrednost (odgovor), konstanto, vprašanje, atribut udeleženca ankete ali regularni izraz:
 
 
<center>[[Datoteka:edit-conditions-comparisonvalueTab.png]]</center>
 
===Primer osnovnih pogojev in kako jih ustvariti===
 
 
==Primer osnovnih pogojev in kako jih ustvariti==
* Prikaži vprašanje v primeru, ČE "je bil odgovor na vprašanje1 v naprej določen odgovor 'Moški'"
** ''preizkušena vrednost'' = odgovor na vprašanje1
** ''primerjalni operator'' = je enako
** ''primerjalna vrednost'' = vrednost primerjamo z odgovorom 'Moški"
 
 
<center>[[Datoteka:edit-simple-condition-predefanswer.png]]</center>
 
 
* Prikaži vprašanje 'Alkohol' '''če''' "je odgovor na vprašanje 'Starost' večji ali enak številski vrednosti '18'"
** ''testirana vrednost'' = odgovor na vprašanje 'Starost' '
** ''operator primerjave'' = večji ali enak
** ''primerjalna vrednost'' = konstantna vrednost '18'
 
 
<center>[[Datoteka:edit-simple-condition-constant.png]]</center>
 
 
{{Alert|title=Pozor|text=Ko uporabljate konstantno 'primerjalno vrednost' za datumsko vprašanje, ne glede na obliko datuma, nastavljeno v anketi, morate uporabiti obliko datuma LLLL-MM-DD.}}
 
 
* Pokaži vprašanje 'Alkohol' '''če''' "je odgovor na vprašanje 'Rojstni datum' večji od 2000-01-01'''"
** ''testirana vrednost'' = odgovor na vprašanje 'Rojstni datum' '
** ''operator primerjave'' = večje ali enako
** ''primerjalna vrednost'' = '2000-01-01' (oblika v konstantnem polju: 2000-01-01 )
 
 
<center>[[File:Date time example condition.png]]</center>
 
 
* Pokaži vprašanje 'Alkohol' '''če''' "'DrinkingHistory' [[Udeleženci ankete|atribut udeleženca]]" se ujema z nizom 'Da'.
** ''testirana vrednost''= ' DrinkingHistory' vrednost, vzeta iz [[Udeleženci ankete#Manage attributes|tabele udeležencev ankete]]
** ''operator primerjave'' = enako
** ''primerjalna vrednost'' = konstantna vrednost 'Da'
 
 
<center>[[Datoteka:edit-simple-condition-leftToken.png]]</center>
 
=Pogoji in scenariji v LimeSurvey=
 
 
=Privzete kombinacije pogoja=
 
 
Kot smo že povedali, LimeSurvey samodejno določi kateri logični operator (IN/ALI) bo izbran med pogoji, kar je odvisno od samega 'konteksta'.
 
Upoštevajte tudi, da '''vrstni red, po katerem smo definirali osnovne pogoje, ni pomemben'''. LimeSurvey jih bo samodejno preuredil po lastni presoji.
 
Poglejmo si to podrobneje.
 
 
==Prvo pravilo: pogoji z isto ''preizkušeno vrednostjo'' so med seboj povezani z ALI==


LimeSurvey ima zelo močno funkcijo načrtovanja pogojev. [[File:conditions_icon.png]]


In this chapter we will describe:
Ko imate več pogojev, so ti '''ORed''' skupaj, če imajo enako '''testirano vrednost'''. To velja, če pogoj velja za več odgovorov, ki pripadajo enemu samemu vprašanju. Na primer, spodaj je bil uporabljen pogoj za tri odgovore, ki pripadajo istemu vprašanju - če je odgovor na vprašanje 'FavColour' enak 'green' '''ALI''' je odgovor na vprašanje 'FavColour' enak 'rdeč' '''ALI' '' odgovor na vprašanje 'FavColour' je enak 'blue', potem bo anketirancu prikazano vprašanje 'BirthDate':
* what conditions are in LimeSurvey
* what you can and can't do with conditions
* what steps you need to learn to setup simple or more complex conditions


For step-by-step video instructions check out [http://www.youtube.com/watch?v=oexr0z-eo9U this tutorial] or download the condition sample survey: [[Media:LimeSurvey_sample_survey_Conditions.lss|LimeSurvey_sample_survey_Conditions.lss]].


==Hide/Show Branching Versus Jump Branching==
<center>[[Datoteka:edit-conditions-naturalOr-edit.png]]


You can design logical branching with LimeSurvey, this means that you can decide that some questions will be displayed only if some conditions are met like "Show question X if question Y was answered 'Z'".
[[Datoteka:edit-conditions-naturalOr-result.png]]</center>


Our approach is to implement a '''Hide/Show Branching Logic''':
* you can define a condition or a set of conditions on each question of your survey: if the condition is met, the question will be displayed


Simply put:
<div class='simplebox'>[[Datoteka:help.png]] Opomba: Če želite izbrati več vnaprej določenih odgovorov, ne pozabite držati tipke Shift ali Ctrl, medtem ko izbirate '''testirane vrednosti'''.</div>
* a question without a condition defined on it will always be displayed
* a question with a condition defined on it will not be displayed unless the condition is met


This approach is different from the '''Jump Branching Logic''' that is sometimes implemented by other software. In the '''Jump Branching Logic''', the resulting action of a met condition would be to jump to another question (that is to say hide all questions in between). '''LimeSurvey doesn't implement this Jump Branching Logic''' method. Instead if you wish to jump a series of questions, you would simply set the same condition on all the questions you do not wish displayed. For example if the jump condition you want to set on Question2 is "Jump to Question5 if the answer to Question1 is 'Yes'", you can simply:
*set a condition on questions 2, 3 and 4 to only display "if the answer to Question1 was NOT 'Yes'"


[[File:simple-condition-on-yes-question.png]]
==Drugo pravilo: pogoji z isto ''preizkušeno vrednostjo'' so med seboj povezani z IN==
* LimeSurvey makes setting the same condition on multiple questions (and thus implementing '''Jump Branching Logic''') easy by allowing you to "copy" a condition from one question to a series of others. In the above example you would begin by setting the condition on Question2, then from the same screen you would copy that condition to Question3 and Question4.


==Supported Types of Conditions==


Basically, a condition can compare values and returns true or false.
Ko imate več pogojev, se zanje uporabi '''IN''' skupaj, če nimajo enakih '''testiranih vrednosti''''. Na primer, spodaj lahko vidite primer za več pogojev, ki temeljijo na različnih prejšnjih vprašanjih - "Če je odgovor na vprašanje 'Alkohol' enak 'Y', je odgovor '''IN''' odgovor na vprašanje 'Spol' enak 'F'", nato se anketirancu prikaže vprašanje 'Uživanje alkohola':


Values that can be compared are:
* '''answers to previous questions'''
** for instance: "IF you answered 'Yes' to Question1"


[[File:simple-condition-on-F-question.png]]
<center>[[Datoteka:edit-conditions-naturalAND-editA.png]]  


It is important at this point to understand what is considered as an eligible question-entry for the condition editor:
[[Datoteka:edit-conditions-naturalAND-editB.png]]</center>


A ''question-entry'' is either:
<center>[[Datoteka:edit-conditions-naturalAND-result.png]]</center>
* a simple question (for all question types apart from Array questions)
** for instance: text questions, radio or dropdown lists, and even multiple choices questions
* or a row in Array questions (except for Array dual scale and Array Multiple Flexible questions),
** for instance: Array of 5 radio buttons, array with label questions
* or either the left part or the right part of an Array dual scale question
* or each cell of an Array Flexible question


As a matter of simplification, ''question-entries'' are just called "Question" in this document and the condition editor.
* '''constant values'''
** for instance: "IF you answered more than 3 days to Question2"


[[File:simple-condition-on-numerical-question.png]]
==Vprašanja z več izbirami==
* '''Participant's profile data''' To use '''Token attributes''', "Anonymized responses" must be set to NO.  This option can be found in General Settings -> Tokens tab.


[[File:simple-condition-on-token.png]]


Several comparison operators are supported from the simple "equals", to the advanced "Regular Expression":
Opomba: Ta odstavek se nanaša na vprašanja tipa ''Več možnosti'' in ''Več možnosti s komentarjem'' in ne na ''Polja (številke)'' (pri tem tipu vprašanj je vsako potrditveno polje definirano kot posamezen vnos in se s tem ne obravnava kot preostala vprašanja z več izbirami).
* The basic ones are equality, and inequality
* The greater/less than operator family is also available, and is usually only useful when using numeric question-entries
** Please note that comparisons on numeric fields honor the numeric order: for instance 2 < 10
** If you're using a question entry whose type is text, then the condition could be evaluated as "2" > "10" (string order)!
** Numeric questions, as well as text questions (when they have the 'numbers_only' attribute set), will use the numeric order for comparisons
* An advanced comparison operator using regular expressions is also available.
* The "Regular Expression" operator (don't panic: If you don't know what this means, then you don't need it)
** the pattern is '''not''' to be enclosed in '/' characters
** for instance <div class="simplebox">[a-zA-Z]$


==How can I combine conditions==


[[File:simple-conditions-combination.png]]
V urejevalniku pogojev se vprašanja tipa ''Več možnosti'' in ''Več možnosti s komentarjem'' prikažejo na dva različna načina:
* Prvi način - ''Skupina potrditvenih polj'': vam omogoča določitev pogojev za vse možne odgovore tega vprašanja
* Drugi način - ''Nova možnost odgovora'': vam omogoča določite pogojev za vsak odgovor posebej


You can '''build complex conditions''' by '''combining simple conditions''' with the '''AND '''and '''OR '''logical operators.


However, it is important to understand that '''LimeSurvey automatically determines which logical operator to apply''': this means that the use of the '''OR '''or '''AND '''operators is determined '''according to the context''' of the condition.
<center>[[Datoteka:edit-conditions-MultipleOptions1.png]]</center>


We'll talk about complex conditions later, but let's start by the simple ones first.


=Understanding Simple conditions: elementary conditions=
====Okus skupine potrditvenih polj====


==Accessing the editor screen==


First you need to access the condition editor:
Zdaj pa se osredotočimo na primer, da bomo bolje razumeli razliko med obema okusoma. Predstavljajmo si, da želimo prikazati vprašanje 'Pointchoice' le, če respondent označi vsaj enega od 'testiranih odgovorov', navedenih pod vprašanjem 'MultipleOrganizations'.  
* open the condition menu by clicking on the ''conditions icon'' [[File:conditions.png]] in the question button bar, when viewing a question.
* then click on the ''Set Conditions icon'' [[File:conditions_add.png]] , the edit conditions screen will appear allowing you to create, edit or delete conditions for the current question.


The following screen will appear:
Kot je navedeno zgoraj, vam skupina okusov potrditvenih polj omogoča, da nastavite pogoje za vse možne odgovore zadevnega vprašanja. Zato so kot '''primerjalne vrednosti''' spodaj izbrane le možnosti, ki se nanašajo na odgovornosti:


[[File:edit-conditions-EditorView.png]]


Note: for the moment '''don't modify the default scenario''' ([[File:default_scenario.png]]) that is automatically selected in the condition addition form: we'll discuss this later.
<center>[[Datoteka:edit-conditions-MultipleOptionsOR.png]]</center>


==Definition of elementary conditions==


An elementary condition is simply a single condition '''without any OR or AND''' logical operators.
Kot lahko opazimo, se pogoji spremenijo v OR zaradi okusa »Skupina potrditvenih polj«, izbranega na začetku.:


It is composed by:
* a left operand: the ''tested value''
** you can choose the ''tested value'' type by selecting the appropriate tab in the condition editor


[[File:edit-conditions-testedvalueTab.png]]
<center>[[Datoteka:edit-conditions-MultipleOptionsOR-result.png]]</center>
* a ''comparison operator''
** Choose the ''comparison operator'' you want to apply in the dropdown list


[[File:conditions-operators.png]]
* a right operand: the ''comparison value''
** you can choose the ''comparison value'' type by selecting the appropriate tab in the condition editor


[[File:edit-conditions-comparisonvalueTab.png]]
====IN določanje pogojev v vprašanjih z več odgovori====


==Example of elementary conditions and how to create them==
* Show question IF "the answer to Question1 was the predefined answer 'Male'"
** ''tested value'' = answer to Question1
** ''comparison operator'' = equals
** ''comparison value'' = answer code of the 'Male' answer


[[File:edit-simple-condition-predefanswer.png]]
Zdaj pa se osredotočimo na podoben primer. Vendar tokrat iščemo le najbolj aktivne člane, da jim postavimo dodatna vprašanja. Za to uporabljamo okus '''Eno potrditveno polje''', ki vam omogoča, da nastavite pogoje za vsako potrditveno polje posebej.
* Show question IF "the answer to Question2 was greater than the numerical value '5'"
** ''tested value''= answer to Question2
** ''comparison operator''= greater than
** ''comparison value''= the constant value 5


[[File:edit-simple-condition-constant.png]]
V tem primeru bo vprašanje X prikazano, če sta označena ''A'' in ''B'':  


</div>'''Caution''': When using a constant 'comparison value' for a date question, you must enter the value with the YYY-MM-DD format, whatever the date format is set for current survey.<div class="simplebox">
* Show question IF "the answer to Question3 was greater than the answer to Question2"
** ''tested value''= answer to Question3
** ''comparison operator''= greater than
** ''comparison value''= answer to Question2


[[File:edit-simple-condition-prevQuestion.png]]
<center>[[Datoteka:edit-conditions-MultipleOptionsAND2.png]]</center>
* Show question IF "the 'Department' value from the participant's profile (Token Attribute from the invitation) equals the 'Accounting' string"
** ''tested value''= the 'Department' value taken from the token invitation
** ''comparison operator''= equals
** ''comparison value''= the constant value 'Accounting'


[[File:edit-simple-condition-leftToken.png]]
<center>[[Datoteka:edit-conditions-MultipleOptionsAND3.png]]</center>


Detailed instructions on how to set up the above example can be found at this blog post: "[http://www.limesurvey-consulting.com/limesurvey-conditions-based-on-token-attributes/ Conditions based on token attributes]"


=Default condition combinations=
Ko končate, lahko opazite, da sta oba pogoja zdaj dodana IN.


As said earlier, LimeSurvey automatically decides which logical operator (AND or OR) should be applied between conditions depending on the 'context'.


Note also that '''the order in which you define your elementary conditions is not relevant''' as LimeSurvey will automatically reorder them according to its own logic.
<center>[[Datoteka:edit-conditions-MultipleOptionsAND-result.png]]</center>


Let's study this in detail.


==First rule: conditions having the same ''tested value'' are ORed together==
To pomeni, da vaše vprašanje ne bo prikazano, razen če sta izpolnjeni obe testirani vrednosti (izbrana podvprašanja).


When you have several conditions they are '''ORed''' together if they share the same '''tested value'''
* this is the case for instance for several possible answers of the same previous questions: "If answer to Question1 equals 'green' '''OR'''  answer to Question1 equals 'red'  '''OR'''  answer to Question1 equals 'blue'"


[[File:edit-conditions-naturalOr-edit.png]][[File:edit-conditions-naturalOr-result.png]]
=Primer uporabe pogojev ALI med različnimi vprašanji=


==Second rule: conditions having different ''tested value'' are ANDed together==


When you have several conditions, they are '''ANDed''' together if they don't share the same '''tested values'''
Zdaj lahko trdite, da morate včasih imeti pogoje '''ORed''', tudi če so nastavljeni za različna vprašanja (to je za različne '''testirane vrednosti'''). Zato imamo scenarije!
* this is the case for instance for several conditions based on different answers from previous questions: "If answer to Question1 equals '4' '''AND''' answer to Question2 equals 'green'"


[[File:edit-conditions-naturalAND-editA.png]]  [[File:edit-conditions-naturalAND-editB.png]]  [[File:edit-conditions-naturalAND-result.png]]


==Third rule: ORed elementary conditions take precedence over the other ANDed conditions==
==Opredelitev scenarija==


Imagine you define the 3 following sets of conditions:
*IF answer to Question "Type !" was 'Green'
*IF answer to question "Type 5" was '4'
*IF answer to question "Type A" was '4' or '5'


[[File:edit-conditions-naturalAND-editA.png]][[File:edit-conditions-naturalAND-editB.png]][[File:edit-conditions-naturalANDandOR-editC.png]]
Scenarij je '''ročno ustvarjena skupina pogojev''' v katerem so pogoji neodvisno ovrednoteni od pogojev iz drugih scenarijev. Zapleteno stanje, ki izhaja iz prepletanja več scenarijev bo izpolnjeno, če bo izpolnjen le en scenarij. Z drugimi besedami: scenariji so '''logična skupina pogojev'', ki z upoštevanjem  zgoraj navedenih pravil in '''medsebojne ALI povezave''' predstavljajo zapletene okoliščine.
* Then the resulting conditions will be:


[[File:edit-conditions-naturalANDandOR-result.png]]
Celoten zgornji opis velja znotraj posameznega scenarija. Pri tem tudi velja, da so vsi novi pogoji ustvarjeni znotraj "Prvotnega scenarija".
**Note the '''capital 'OR'''' and the '''lower case 'and'''': this means that ORed conditions are evaluated as if prioritized with parentheses
**Note also that the order of the elementary conditions creation is not preserved and has no importance here
** The resulting conditions is: IF (answer to question "Type A" was '4' '''OR  '''answer to question "Type A" was '4') '''AND '''(IF answer to question "Type 5" was '4') '''AND '''(IF answer to Question "Type !" was 'Green')


==The multiple options questions==


Note: This paragraph applies to ''Multiple options'' and ''Multiple options with comments'' questions, and not to ''Array Multiple Flexible (number) with checkbox layout'' questions (for this later question type, each checkbox is a separate question-entry and is not really handled as other multiple options question-types).
==Dodajanje vprašanja v dodaten scenarij==


[[File:edit-conditions-MultipleOptions1.png]]


For ''Multiple options'' and ''Multiple options with comments'' questions, in the ''tested value''part of the condition editor this question will appear in two flavors
Ko ustvarite (ali urejate) pogoj, lahko spremenite scenarij v katerem je shranjen pogoj:
* a ''Group of checkboxes'' flavor which let you set conditions on all possible answers of this question
* a set of ''Single checkbox'' entries which let you set conditions on each checkbox individually


And now let's test your knowledge of conditions by trying to answer this question:
* I've got a multiple options question:
** Issue A: How can I set ORed conditions between different answers of this question
** Issue B: How can I set ANDed conditions between different answers of this question


...
<center>[[Datoteka:edit-conditions-EditorView-Scenario.png]]</center>


...


...
Če morate določiti pogoj v drugem scenariju kot prvotnem, kliknite na ikono Dodaj scenarij [[File:plus.png]] in vnesite številko scenarija: [[File:default_scenario_edit.png]]


Now the answers...
ID številka scenarija nima večjega pomena zato lahko imajo različni scenariji naključno izbrane ID številke.


For Issue A:
* Use the ''Group of checkboxes'' entry as your ''tested value'' and select as much answers you want


[[File:edit-conditions-MultipleOptionsOR.png]][[File:edit-conditions-MultipleOptionsOR-result.png]]
<center>[[File:Conditions test ids.png]]</center>


For Issue B:
* Use the ''Single checkbox'' entry that correspond to the first answer you need to set the condition on and set the condition to the ''checked'' ''comparison value''


[[File:edit-conditions-MultipleOptionsAND1.png]]
Številko dodeljeno scenariju lahko spremenite s klikom na ikono [[File:scenario_edit.png]]. Nato morate izpolniti obrazec, ki se pojavi v isti vrstici.
* Use the ''Single checkbox'' entry that correspond to the second answer you need to set the condition on and set the condition to the ''checked'' ''comparison value''


[[File:edit-conditions-MultipleOptionsAND2.png]]
* Enjoy the result:


[[File:edit-conditions-MultipleOptionsAND-result.png]]
<center>[[Datoteka:edit_scenario_conditions.png]]</center>


=Using ORed conditions between different questions: the use of scenario=


Now, you may argue that sometimes you need to have '''ORed''' conditions even when they are set on different questions (that is to say on different '''tested values'''): this is where scenarios can be used.
Kot smo že omenili, številke scenarijev nimajo nobenega vpliva kako pogoje vrednotimo. Vendar pa je sprememba številke scenarija pomembna, ko želimo:
* določiti v kakšnem vrstnem redu želimo, da se scenariji prikazujejo v tiskani verziji anketnega vprašalnika
* združiti pogoje dveh scenarijev (v primeru združevanja scenarija 10 s scenarijem 1 le preštevilčite scenarij 10 z ID številko prvega scenarija).


[[File:multi_scenario.png]]


==Definition of a scenario==
===Primer: ustvarjanje treh scenarijev===


A scenario is simply '''a manual grouping of conditions''' in which conditions are evaluated independently of conditions from other scenarios. The complex condition resulting in this association of several scenarios will be met if only one scenario is met: in other words scenarios are '''logical grouping of conditions''', respecting the above rules, and '''which are ORed together''' to build complex conditions.


All what we described above is true inside a scenario, and by default all new conditions are created inside the "Default Scenario".
Če želite ustvariti tri scenarije, potrebujete vsaj tri pogoje in vsakemu od njih dodate drugačen ID scenarija. Ko bo končano, bodo scenariji med seboj povezani preko operatorja 'ALI'. Na primer, lahko izgleda takole:


However, when you create a new elementary condition, you decide to affect it to another scenario than the default one.


Scenarios are identified by a simple number, the "Default scenario" having number '1' as its identifier.
<center>[[File:edit-conditions-EditorView-Scenario2.png]]</center>


==Adding a question to another scenario==
== IN proti ALI v istem scenariju==


When you create (or edit) a condition, you can modify the scenario in which the condition is stored:


[[File:edit-conditions-EditorView-Scenario.png]]
V določenih primerih lahko končate z logičnima operaterjema IN in ALI v istem scenariju:


If you need to define a condition in another scenario than the default one, click the new scenario icon [[File:plus.png]], and type in the scenario number: [[File:default_scenario_edit.png]]


The number id of a scenario has no importance and different scenarios can have non-continuous ids.
<center>[[Datoteka:And vs OR example.png]]</center>


[[File:edit-conditions-EditorView-Scenario2.png]]


=Using the editor=
LimeSurvey bo vedno uporabil prvi ALI. Za nadaljnje podrobnosti o tem si lahko ogledate naslednji članek Wikipedije na [https://en.wikipedia.org/wiki/Boolean_algebra Boolean algebra].


==Editor overview==
Vendar. vrstni red operacij lahko opazujemo tudi v polju Relevance equation. Za zgornji primer je enačba ustreznosti označena spodaj:


First you access the condition editor:
* open the condition menu by clicking on the ''conditions icon'' [[File:conditions.png]] in the question button bar, when viewing a question.


The top part of the window always shows any conditions already set for this question:
<center>[[Datoteka:AND vs OR relevance eq.png]]</center>


[[File:existing_conditions.png]]


In the example above question B is set to only display if:
Kot lahko opazimo, je za logične operacije ALI dodan niz dodatnih oklepajev, da bi programska oprema vedela, da mora biti najprej "izračunana".
* The answer to the question-entry FBI of previous question A is "1"
* AND
** EITHER the answer to the question-entry CIA of previous question A is "5"
** OR the answer to the question-entry CIA of previous question A is "3"


In Add/Edit mode [[File:conditions_add.png]], some specific actions are possible on each line such as:
* edit condition [[File:conditions_edit.png]]
* delete all conditions [[File:conditions_deleteall.png]], delete this condition [[File:conditions_delete.png]], delete all conditions from this scenario [[File:scenario_delete.png]]
* edit scenario [[File:scenario_edit.png]]


[[File:edit-conditions-EditModeButtons.png]]
<div class='simplebox'>[[File:help.png]] '''Pomoč:''' Za več informacij o enačbah ustreznosti preverite wiki razdelka [[ExpressionScript - Presentation]] in [[QS:Relevance|enačba ustreznosti]].</div>


In Copy mode [[File:conditions_copy.png]], each line is prepended with a checkbox allowing you to select those conditions you want to copy to later questions:
=Kako kopirati pogoje=


[[File:copying_conditions.png]]


==Setting new conditions==
Funkcionalnost pogojev kopiranja lahko uporabite, če želite uporabiti isti nabor pogojev, kot ste jih uporabili za vprašanja od 5 do 10. Na ta način vam ne bo treba ročno znova ustvarjati pogojev, ki ste jih uporabili za prejšnja vprašanja.


===First select the scenario===
Če želite začeti kopirati pogoje, morate najprej izbrati vprašanje, za katerega se pogoj(-i) uporabljajo (v našem primeru vprašanje 'LowQ'). Nato izberite pogoje, za katere želite, da se kopirajo, in izberite vprašanje, ki mu želite dodati pogoje (v našem primeru vprašanje 'Alkohol').


'''If you don't need ORed conditions''' between different question-entries, '''just don't modify the default scenario''' ([[File:default_scenario.png]]) that is automatically selected in the condition edition form.


On the contrary, if you need to define a condition in another scenario than the default one, click the new scenario icon [[File:plus.png]], and type in the scenario number: [[File:default_scenario_edit.png]]
<center>[[File:Copy conditions panel.png]]</center>


The number id of a scenario has no importance and different scenarios can have non-continuous ids.


===Select the ''tested value''===
<div class='simplebox'>[[FIle:help.png]] '''Opomba:''' Pogoje lahko nastavite samo na podlagi vprašanj, ki se pojavijo pred vprašanjem, na katerega je postavljen pogoj.</div>


Click on the tab corresponding to the type of the ''tested value'' you want: it is either a previous question or a value taken from the profile of the participant (token attribute).
Prosimo, bodite pozorni na delovanje pogojev kopiranja, ko želite kopirati in uporabiti nabor pogojev, ki se nahajajo pod različnimi scenariji, za drugo vprašanje, ki uporablja enake ali drugačne številke id scenarija. Če želite povzeti morebitne primere, si oglejte naslednji primer:


Note that i'''n order to use the ''Token''''' your survey must:
* želite kopirati scenarij 1 - pogoj A, scenarij 1 - pogoj B, scenarij 7 - pogoj C in scenarij 7 - pogoj D iz vprašanjaX v vprašanjeY
* '''not use anonymous answers'''
*VprašanjeY že vsebuje scenarij 1 - pogoj A, scenarij - pogoj C , Scenarij 6 - Pogoj E, Scenarij 8- Pogoj F.
* '''use a token table''' and closed access
*Ko bodo kopirani, bodo naslednji pogoji uporabljeni za vprašanje Y:
**Scenarij 1: Pogoj A, Pogoj B, Pogoj C -> ''' Pogoj A ni več kopiran, saj že obstaja v vprašanju Y, kopira se samo pogoj B.''''
**Scenarij 6: Pogoj E -> ni prizadet
**Scenarij 7: Pogoj C, pogoj D - > '''nov scenarij je ustvarjen, kjer sta mu dodana dva pogoja'''
**Scenarij 8: Pogoj F -> ni prizadet


Then select the entry you want as ''tested value''.


If you select a question-entry (from the 'Previous questions' tab) and if this question uses predefined answers then the corresponding predefined answers are displayed in the ''Predefined'' tab of the ''comparison value'' selection.
=Ponastavi pogoje=


===Select the comparison operator===


[[File:comparison_operators_conditions.png]]
Za hitro ponastavitev vseh pogojev ankete kliknite eno nastavitev, povezano z anketo, poiščite '''Orodja'' v zgornji orodni vrstici in kliknite '''Ponastavi pogoje:'''


Several comparison operators can be used:
* The basic ones are equality, and inequality
* The greater/less than operator family is also available, and is usually only useful when using numeric question-entries
** Please note that comparisons on numeric fields honor the numeric order: for instance 2 < 10
** If you're using a question entry whose type is text, then the condition could be evaluated as "2" > "10" (string order).
** Numeric questions, as well as text questions having the 'numbers_only' attribute set, will use the numeric order for comparisons
* An advanced comparison operator using regular expressions is also available. When selected, the answer input box will automatically switch to the advanced mode.


===Selecting an ''comparison value''===
<center>[[File:Reset_conditions_location.png]]</center>


Select the tab that corresponds to the type of ''comparison value'' you need: it can be a predefined answers, a constant value, an answer from a previous question, a value from a token attribute, or a regular expression (reserved for the advanced regular expression operator).


Then select or type in the value you want to use.
Nato na naslednji strani potrdite, da želite nadaljevati, in vsi pogoji bodo izbrisani.  


Note that if you select a value in a tab, then change the tab and select another value in this other tab, the first option you selected is lost.


When using ''predefined answers'', you can then select one or more predefined answers:
=Stvari, na katere morate biti pozorni=
* the possible answers for that question
** Choose the answer that you want to use
** You can choose multiple answers in one go by using the CTRL button and clicking on more than one answer in the right hand select list


After that click on the "Add Condition" button.


==Editing/Deleting conditions==
==Splošni premisleki==


Apart from adding new conditions, the Add/Edit can be used to
Obstaja nekaj osnovnih pravil na katere morate paziti preden določite pogoje v zvezi z vprašanjem:
* edit conditions
* Ko enkrat določimo pogoj za določeno vprašanje, se to vprašanje ne bo prikazalo razen če bo pogoj izpolnjen
* delete conditions
* Pogoje je možno nastaviti le na osnovi vprašanj, ki se pojavijo pred vprašanjem na katerem nastavljamo pogoj
* edit scenario
* Če v anketi spremenimo vrstni red vprašanj, LimeSurvey v primeru prekinitve že nastavljenih pogojev ne prikaže posebnega opozorila. Zato priporočamo, da pogojev ne določate dokler niste povsem zadovoljni z vrstnim redom vprašanj in skupin v vaši anketi
* Spreminjanje pogojev je omogočeno tudi, ko je anketa že aktivirana vendar je to potrebno narediti previdno, saj ni ''doslednosti preverjanja''


===Edit conditions===


By clicking on the edit icon [[File:conditions_edit.png]] on a condition line, the edit condition form at the bottom is automatically displayed with the current settings for this condition. Note that in this mode you can only select one predefined answer.
==Pogoji, ki uporabljajo prednastavljene odgovore oblike 'brez odgovora'==


Click the update condition button to update this condition.


===Delete conditions===
<center>[[File:noanswer_conditions.png]]</center>


You can:
* delete a single condition by clicking on this icon [[File:conditions_delete.png]]
* delete all conditions within a scenario by clicking on this icon [[File:scenario_delete.png]]
* delete all conditions from this question by clicking on this icon [[File:conditions_deleteall.png]]


===Edit Scenario===
Nastavitev naslednjega pogoja »Prikaži vprašanje 'FavColour', če je odgovor na vprašanje 'Spol' 'brez odgovora'« v resnici pomeni "prikaži vprašanje 'FavColour', če je bilo vprašanje 'Spol' prikazano udeležencu ankete, ki ni oddal odgovora" .


You can change the number assigned to a scenario by clicking this Icon [[File:scenario_edit.png]] and fill-in the form that appears on the same line.


[[File:edit_scenario_conditions.png]]
{{Hint|Text=Če želite možnost brez odgovora prikazati kot vnaprej določen odgovor, vprašanje ne more biti [[QS:Obvezno|obvezno]].}}


Alternatively, you can renumber scenarios by clicking on this icon [[File:scenario_renumber.png]].


As said above, scenario numbers have no impact in the way conditions are evaluated. However, modifying the scenario numbers are needed in order to:
==Verižno pogojevanje==
* decide in which order the scenario are displayed when using the printable version of a survey
* merge conditions from 2 scenarios (in order to merge scenario 10 to scenario 1, just renumber scenario 10 with scenario id 1).


==Copying conditions to later questions==


It is not uncommon for a group of questions to have the same condition. Luckily you can copy this condition to any subsequent question from the conditions designer once a first condition has been set.
Če postavite pogoje za vprašanje, ki samo po sebi ima pogoje, se lahko vaša anketa obnaša na načine, ki jih morda niste predvideli. Na primer, tipičen stranski učinek je, da če skrijete vsa vprašanja v skupini z verižnimi pogoji, bo glava skupine še vedno prikazana, razen če popravite te pogoje, kot je razloženo spodaj.


Switch to the copy mode by clicking the on the Copy conditions icon [[File:conditions_copy.png]].


[[File:copy_conditions_example.png]]
<center>[[File:chained_conditions1.png]]</center>


The conditions applying to the current questions are displayed with a checkbox on their left. You can:
* select each condition individually by checking the checkbox on the left of the condition
* or select all conditions from a scenario at a time by checking the checkbox on the left of the scenario


Then select all subsequent questions in the survey on which you want to copy the selected conditions from the bottom Select box by highlighting them (using the CTRL key to select multiples). Then click on the "Copy Conditions" button to copy them across.
<center>[[Datoteka:chained_conditions2_bad.png]]</center>


It is usually best to leave this until you have finished entering all your survey questions, and are satisfied with the question order.


=Things to watch out for=
V zgornjem primeru je vprašanje 'Alkohol' prikazano, če je respondent že prej odgovoril na vprašanje 'AAMN' z 'Ne (N)'. Vendar pa vprašanje 'AAMN' morda ne bo prikazano na koncu, če respondent ni izbral prejšnjega vprašanja ('Spol') odgovora 'Moški (M)'. V tem scenariju vprašanje 'Alkohol' ne bo prikazano, če je bil predhodno izbran 'Moški (M)'.


==General considerations==
Če želite prikazati vprašanje 'Alkohol', morate kopirati pogoje iz prejšnjih vprašanj v tisto, ki ga urejate. Če želite prikazati vprašanje 'Alkohol', morate nastaviti naslednji nabor pogojev:
* Prikaži 'AAMN', če je odgovor na 'Spol' 'Moški (M)'
* Pokaži 'Alkohol' če je odgovor na 'Spol' 'Moški (M)' '''in''', če je odgovor na 'AAMN' Ne (N)'.


There are a few basic rules you should keep in mind before setting conditions on a question:
Po popravku bi pravilen nabor pogojev za Q3 izgledal sledeče:
*Once a single condition has been set for a question, that question '''will not display''' unless that condition is met.
*Conditions can only be set based on questions that appear '''before''' the question on which the condition is set.
*If you change the order of questions in your survey after you create conditions LimeSurvey does not warn you if the changed order will break a condition. You should always leave the creation of conditions until you are satisifed with the order of questions and groups in your survey.
*You can modify conditions even after a survey has been activated. This should be done with caution, as there is no "consistency checking" applied here.


==Conditions using the 'no answer' predefined answer==


[[File:noanswer_conditions.png]]
<center>[[File:chained_conditions2_good.png]]</center>


Setting the following condition "Show question Q20 if answer to question Q1 is 'no answer'" really means "show question Q20 if question Q1 was displayed and received no answer". This is not equivalent to "show question Q20 if question Q1 was not displayed"


==Chained conditions==
Če torej načrtujete zapleteno anketo z velikim številom pogojev, se prepričajte, da anketo preizkusite za čim več različnih kombinacij rezultatov, ki si jih lahko zamislite.


If you set conditions on a question that, itself, has conditions, then there may arise occasions where the survey behaves in ways you might not have predicted. For example a typical side-effect is that if you hide all questions in a group with chained conditions that the group header will still be shown unless you correct these conditions as explained below.
<div class='simplebox'>[[File:help.png]] Če želite izvedeti več o tem, kako lahko kopirate pogoje v LimeSurvey, se pomaknite navzgor ali kliknite tukaj, da nadaljujete z branjem posvečenega [[Setting_conditions#How_to_copy_conditions|wiki razdelka]].</div>


[[File:chained_conditions1.png]]


[[File:chained_conditions2_bad.png]]
==Omejitve in bližnjice==


In the example above a question is displayed 'Do you like being male?' which has conditions set, and which will only display if the answer to ''What is your gender?'' is ''M''. If you were to add a condition to this question requiring a specific answer from the ''Do you like being male?'' question, then this question will never display, because the question ''Do you like being male'' will not be presented.


It is highly recommended that you copy the conditions from the earlier question to the one you're editting.
===Prikaz napredka===


For instance, you want the following:
* Q1 is a Gender question
* Q2 is a Yes/No and is displayed if answer to Q1 is Male
* Q3 is a ranking question and is displayed if Q2 is Yes


What you really need to setup is the following set of conditions:
Če ustvarite anketo, v kateri je veliko vprašanj preskočenih zaradi pogojev, vrstica napredka preskoči nabor vprašanj ali pa se anketa konča pri 50 %.
* on Q2: display question if answer to Q1 is Yes
* on Q3: display question if answer to Q1 is Male AND answer to Q2 is Yes


After correction, the correct set of conditions for Q3 should look like:
Da bi se izognili takšnemu vedenju, je treba vprašanja, ki bi jih lahko preskočili, razporediti med prikazana vprašanja. Na ta način se na odgovor preskoči le eno ali dve vprašanji.


[[File:chained_conditions2_good.png]]
Na primer, glede na vprašanje 1 (vprašanje da ali ne) bo prikazanih 14 vprašanj (2A do 15A), če je odgovor na vprašanje 1 'Da', ali 2B do 15B, če je bil odgovor na vprašanje 1 'Ne'.


So if you are designing a complicated survey with large number of conditions, make sure you test the survey for as many different combinations of results as you can think of.
Če vprašanja razporedite v eno skupino in jih razporedite kot 2A, 2B, 3A, 3B in tako naprej, boste dobili skoraj pravilno vrstico napredka, medtem ko vprašanja razporedite kot 2A, 3A, 4A, [...], 2B, 3B, 4B, ... boste dobili vrstico napredka od 0 do 50 % ali od 50 % do 100 %, odvisno od odgovora na prvo vprašanje.


==Limitations and workarounds==


===Progress-bar===
===Nastavitev konstante pri vprašanju tipa ''Datum''===


If you create a survey where many questions get skipped because of conditions, the progress bar will jump a big step forward, or the survey ends at 50%.


To avoid such behavior, the questions that could be skipped, should be arranged between the shown questions, so that only one or two questions get skipped per answer.
Uporabiti boste morali interni prikaz vrednosti Datuma, ki je  YYYY-MM-DD, da boste lahko opredelili konstanto.


For Example: based on question one (yes or no question) 15 questions will be asked question 1A to 15A when the answer of question one was yes, 1B to 15B when the answer to question one was no.


If you arrange the questions in one group and arrange them like: 2A, 2B, 3A, 3B, and so on you will get a nearly correct progress bar, while arranging the questions like 2A, 3A, 4A, [...], 2B, 3B, 4B, ... you will get a progress bar from 0 to 50% or from 50% to 100%, depending on the answer to the first question.
=== Nastavitev pogojev pri izbiri možnosti "Drugo" v primeru vprašanja tipa Vprašanja z več izbirami===


=== Setting a constant comparison value for a "Date" Question Type===


You have to use the internal representation of Date values, which is YYYY-MM-DD to define your constant comparison value.
V vrsti vprašanja z več možnostmi lahko kot veljavno izbiro uporabite možnost »Drugo«, ki je navedena v vrsti vprašanja, vendar zanjo ne morete nastaviti pogojev. Na primer, vprašanje št. 1 pravi "Katero barvo najraje uporabljate?" Možnosti potrditvenega polja za odgovor so Modra, Črna in Drugo. Če udeleženec izbere Modro, lahko postavite pogoj. Če udeleženec izbere črno, lahko določite drugačen pogoj. '''Če pa udeleženec izbere "Drugo" in nekaj vnese v besedilno polje, NI mogoče nastaviti pogoja.''' LimeSurvey ne prepozna, če je udeleženec izbral pogoj "Drugo". To NI napaka, ampak omejitev.


=== Setting conditions for "Other" Options in the Multiple Options Question Type===
V primeru, da anketiranec izbere odgovor 'Drugo', le to nikjer ni razvidno oziroma posebej zabeleženo. Edini način, da preverimo ali je anketiranec izbral to možnost ali ne je, da preverimo ali je bil vnesen tekst v polje za komentar.


In the multiple options question type, you can use the "Other" provided in the question type as a valid choice but you cannot set conditions on it. For example: Question No 1 says "Which color do your prefer to use?" Answer checkbox choices are Blue, Black and Other. If the participant chooses Blue, you can set a condition. If the participant chooses Black, you can set a different condition. However, if the participant chooses "Other" and types in something in the text box, there is NO way a condition can be set. LimeSurvey does not recognize if the participant chose the "Other" condition. This is NOT a bug but a limitation.
Vendar pa zaradi specifičnega načina obravnave Vprašanja z več izbirami testiranje besedilnega polja pri možnosti 'Drugo' nikoli ni bilo izvršeno.


There is no real field recorded for the 'other' checkbox for this question type. Thus, the only way to know if the user has answered the 'other' part of the question or not would be to check if the value of the text written in the other input field is empty or not.
Vendar lahko zgoraj opisano težavo zaobidemo in sicer tako, da dodamo ekspliciten odgovor, ki ga poimenujemo 'Drugo' in ne že v naprej nastavljeno možnost 'Drugo'. Nato dodamo dodatno polje za vprašanje tipa Kratko besedilo, ki se bo prikazalo v primeru, če je bil izbran odgovor 'Drugo'.


However, due to the specific way we handle Multiple choice questions, testing the 'other' text input field has never been implemented.


As a workaround, add an explicit answer option called 'Other' and do not use the built-in 'other' option of these question types. Then add an additional short text question which will be displayed if this 'Other' checkbox was clicked.
===Kako uporabljati oklepaje pri matematičnih izrazih?===


===How to use parenthesis for the boolean expressions?===


'''''You can't!'''''
'''''Ne morete!'''''


If you want to design something like:
Če želite ustvariti naslednji izraz:


 (condition1 OR condition2) AND (condition3 OR condition4)
 (pogoj1 ALI pogoj2) IN (pogoj3 ALI pogoj4)


you'll have to set up:
morate narediti sledeče:


 (condition1 AND condition3) OR
(pogoj1 IN pogoj3) ALI


 (condition1 AND condition4) OR
(pogoj1 IN pogoj4) ALI


 (condition2 AND condition3) OR
(pogoj2 IN pogoj3) ALI


 (condition2 AND condition4)
(pogoj2 IN pogoj4)

Latest revision as of 09:53, 13 December 2023


Pregled pogojev v LimeSurvey-u

LimeSurvey ima zelo zmogljivo funkcijo logičnega razvejanja. Do njega lahko dostopate s klikom na gumb Nastavi pogoje - Datoteka:conditions_icon.png - ki se nahaja na vsaki vrstici z vprašanji.

V tem poglavju bomo opisali:

  • katere pogoje lahko najdete v LimeSurvey
  • kaj lahko in česa ne morete narediti s pogoji
  • katere korake se morate naučiti za nastavitev preprostih ali bolj zapletenih pogojev

Za video navodila po korakih si oglejte to vadnico ali prenesite vzorčno anketo o stanju: [[Media:LimeSurvey_Survey_Setting_Conditions.zip|LimeSurvey_Survey_Setting_Conditions.zip] ].


 Hint: Funkcije pogojev delujejo kot GUI za izraze in enačbe, ki jih je mogoče uporabiti pri vprašanjih, kar omogoča uporabnikom, da preprosto povečajo kompleksnost svojih anket, ne da bi se spuščali v izraze in ustreznost enačbe. Vendar pa je ExpressionScript treba preučiti/poznati, da povečate obseg možnosti, ki so na voljo znotraj LimeSurvey.


Skrij/prikaži razvejanje v primerjavi s preskočnim razvejanjem

LimeSurvey vam omogoča izdelati logiko razvejanosti. Določite lahko, da bodo nekatera vprašanja prikazana le, če so izpolnjeni nekateri pogoji (primer: Prikaži vprašanje X, če je vprašanje Y bilo odgovorjeno z možnostjo Z).

Ideja je, da izvedemo "Prikaži/Skrij razvejanost podvprašanj":

  • Pri vsakem vprašanju v anketi lahko definirate pogoj ali niz pogojev: vprašanje se prikaže, če je pogoj izpolnjen


Datoteka:simple-condition-on-yes-question.png


Datoteka:help.png Preprosto povedano:
  • vprašanje brez definiranega pogoja bo vedno prikazano;
  • vprašanje z definiranim pogojem ne bo prikazano, razen če je pogoj izpolnjen .

Ta pristop se razlikuje od Jump Branching Logic, ki ga včasih izvaja druga programska oprema. V Jump Branching Logic bi bilo dejanje, ki izhaja iz izpolnjenega pogoja, skok na drugo vprašanje (to je skrivanje vseh vmesnih vprašanj). LimeSurvey ne izvaja te metode Jump Branching Logic. Namesto tega, če želite preskočiti niz vprašanj, preprosto nastavite enak pogoj za vsa vprašanja, za katera ne želite, da so prikazana. Na primer, če je pogoj skoka, ki ga želite nastaviti pri vprašanju 2, »Skoči na vprašanje 5, če je odgovor na vprašanje 1 'Da'«, lahko preprosto:

  • nastavite pogoj pri vprašanjih 2, 3 in 4, da se prikaže samo "če je bil odgovor na vprašanje 1 NE 'da'"

LimeSurvey poenostavi nastavitev enakega pogoja na več vprašanj (in s tem implementacijo Jump Branching Logic), saj vam omogoča, da "kopirate" pogoj iz enega vprašanja v vrsto drugih. V zgornjem primeru bi začeli z nastavitvijo pogoja za Vprašanje2, nato pa bi z istega zaslona ta pogoj kopirali v Vprašanje3 in Vprašanje4.

Datoteka:help.png Če želite izvedeti več podrobnosti o tem, kako lahko kopirate pogoje znotraj LimeSurvey, nadaljujte z branjem naslednjega wiki razdelek.


Veljavni tipi pogojev

V bistvu lahko pogoj primerja vrednosti in vrne vrednost true ali false.

Vrednosti, ki jih lahko primerjamo, so odgovori na prejšnja vprašanja. Na primer, če na vprašanje 1 odgovorite z »Da«, bo anketirancu prikazano vprašanje 2:


Datoteka:Questions_example_set_conditions_y.png




Na tej točki je zelo pomembno, da razumemo katero vstopno vprašanje je primerno za urejevalnik pogojev:

vprašalni vnos je bodisi:

  • preprosto vprašanje (za vse vrste vprašanj razen vprašanj Array)
    • na primer: besedilna vprašanja, radio ali spustni seznami in celo več izbir vprašanja
  • ali vrstica v Array questions (razen za Array dual scale in Array multiple flexible questions)
    • na primer: niz s 5 izbirnimi gumbi ali niz z vprašanji oznake
  • ali bodisi levi del ali desni del vprašanja Array z dvojno lestvico
  • ali vsaka celica Array prilagodljivega vprašanja

Template:Opomba

  • konstantne vrednosti
    • na primer: "Če ste na spodnje vprašanje odgovorili več kot 18 let"


Datoteka:simple-condition-on-numerical-question.png


  • Podatki o profilu udeležencev: Če želite uporabiti podatke iz tabele udeležencev ankete, morate "Anonimizirani odgovori" nastaviti na NE. To možnost najdete na plošči ankete nastavitve udeleženca.


Datoteka:simple-condition-on-token.png




Podprtih je več primerjalnih operatorjev - od preprostega "enako" do naprednega "regularnega izraza":

  • Osnovni se nanašajo na operaciji "enako" in "ni enako"
  • večje/manjše Na voljo je tudi družina operatorjev than in se običajno uporablja pri uporabi številskih vnosov vprašanj
    • Upoštevajte, da primerjave v številskih poljih uporabljajo številski vrstni red. Na primer, 2 < 10
    • Če uporabljate vnos vprašanja, katerega vrsta je besedilo, je pogoj lahko ovrednoten kot "2" > "10" (vrstni red nizov)!
    • Numerična vprašanja, kot tudi besedilna vprašanja (če imajo nastavljen atribut 'numbers_only'), bodo za primerjave uporabljali številski vrstni red
  • Na voljo je tudi napredni primerjalni operator z uporabo regularnih izrazov (brez panike! Če ne veste kaj to pomeni, potem ga ne potrebujete)
    • vzorca ni zapreti med znake '/'
    • na primer: '[a-zA -Z]$


Kako lahko združimo pogoje

Sestavimo lahko kompleksne pogoje s kombinacijo preprostih pogojev z logičnimi operatorji IN in ALI.


Datoteka:simple-conditions-combination.png


Vendar je pomembno razumeti, da LimeSurvey samodejno določi, kateri logični operator naj uporabi'. To pomeni, da je uporaba operatorjev ALI ali IN določena glede na kontekst pogoja. V zgornjem primeru je samo en scenarij. To pomeni, da LimeSurvey uporablja Boolovo algebro, kar pomeni, da se operator or najprej "izračuna".

Več bomo govorili o zapletenih pogojih kasneje. Najprej se skupaj osredotočimo na osnovne.

Dostop do urejevalnika

Najprej morate dostopati do oblikovalnika pogojev. Če želite to narediti, kliknite na vprašanje, za katerega želite uporabiti pogoj:


Datoteka:Question designer search question.png


Zdaj poiščite gumb Nastavi pogoje, ki se nahaja v zgornji vrstici z vprašanji:



Ko dostopate, se prikaže naslednja stran:


Datoteka: Question designer top.png


Ploščo oblikovalca pogojev lahko razdelimo na tri dele:


Orodna vrstica oblikovalca pogojev

V orodni vrstici lahko najdete naslednje možnosti:



  • 'Pokaži pogoje za to vprašanje': Kliknite na ta gumb, da dobite hiter pregled trenutnih obstoječih pogojev, ki veljajo za vaše vprašanje.
  • 'Dodaj in uredi pogoje': Predstavlja privzeto stran, ki se samodejno odpre, ko kliknete gumb Nastavi pogoje. Razdeljen je na dva dela: (1) tabelo, ki prikazuje vse obstoječe pogoje in scenarije, in (2) meni za dodajanje/urejanje pogojev.
  • 'Pogoji kopiranja': Včasih želite uporabiti isti pogoj za X vprašanj, da se vprašanjeY prikaže na koncu. Za to kliknite Kopiraj pogoje. Odprlo se bo novo okno, ki prikazuje trenutne obstoječe pogoje, dodane vašemu vprašanju (recimo mu vprašanje3). Če jih želite dodati v vprašanje5, označite želene pogoje, ki jih želite kopirati, izberite vprašanje5 in kliknite na gumb Kopiraj pogoje, ki se nahaja v spodnjem levem delu plošče. Za nadaljnje informacije nadaljujte z branjem naslednjega wiki razdelek.
  • 'Shrani in zapri: Ko končate s spremembami, kliknite Shrani in zapri, da shranite svoje pogoje.
  • 'Premakni se na vprašanje': Da ne bi zapustili plošče oblikovalca pogojev, ko se premikate na drugo vprašanje, uporabite naslednjo možnost, da s spustnega seznama izberete naslednje vprašanje, za katerega želite uporabiti pogoje. Upoštevajte, da spustni seznam prikazuje vprašanja, ki so prikazana v anketi pred in za trenutnim vprašanjem.
  • 'Zapri': Če želite zapustiti ploščo brez kakršnih koli sprememb, lahko greste neposredno na zavihek z nastavitvami/strukturo in izberete želeno možnost ali kliknete Zapri, ki se nahaja v zgornjem desnem kotu zaslona.


Pregled obstoječih pogojev

V tem razdelku je prikazana tabela, ki vsebuje vse obstoječe scenarije in pogoje vprašanja. Nekatera dejanja je mogoče izvesti od tu:



  • V zgornjem desnem delu so na voljo tri akcije:
    • Hitro dodajanje pogojev - pospeši postopek dodajanja pogojev (preberite spodaj, če želite izvedeti več o vseh možnostih )
    • Preštevilči scenarije - če kliknete, bodo scenariji preštevilčeni z inkrementalnimi številkami, ki se začnejo od ena. Upoštevajte, da je ta možnost prikazana le, če sta za vaše vprašanje uporabljena dva ali več scenarijev.
    • Izbriši vse pogoje - s tem dejanjem lahko izbrišete vse trenutne obstoječe pogoje in scenarije, uporabljene za vaše vprašanje.



  • Poleg ID številke vsakega scenarija so trije gumbi, ki vam omogočajo izvajanje naslednjih dejanj:
    • Izbriši scenarij
    • Spremeni številko scenarija
    • Dodaj pogoj temu scenariju - kliknite to gumb za dodajanje drugega pogoja želenemu scenariju



  • Za vsak pogoj je mogoče izvesti dve dejanji:
    • Izbriši pogoj
    • Uredi pogoj - če kliknete, boste lahko uredili pogoj iz menija pogojev


Dodaj/Uredi pogoje

Spodnji del zaslona je dodeljen meniju Dodaj/uredi pogoje:


Datoteka:Add_edit_condition_q.png


Pogoj lahko uredite tudi z istega mesta, če ste pred tem pritisnili na zeleni svinčnik, ki ustreza vprašanju, ki ga želite urediti (glejte tabelo pogojev in scenarijev).

Da bi razumeli, kako funkcija pogojev deluje v LimeSurvey, bomo najprej predstavili osnovne pogoje.


Opomba: v tem trenutko ne spreminjajmo privzetega scenarija (), ki je samodejno izbran v tem pogojnem obrazcu; več o tem kasneje.


Opredelitev osnovnih elementov

Osnovni pogoj je edini pogoj brez dodatnih logičnih operaterjev IN ali ALI.

Sestavljajo ga:

  • levi operand: vrednost, ki jo preverjamo
    • vrednost, ki jo preverjamo, označimo tako, da izberemo ustrezen jeziček v urejevalniku pogoja


Datoteka:edit-conditions-testedvalueTab.png


Če izberete vnos vprašanja (na zavihku Prejšnja vprašanja) in če to vprašanje uporablja vnaprej določene odgovore, potem so ustrezni vnaprej določeni odgovori prikazani pod zavihkom Prednastavljeno izbora primerjalne vrednosti.


Datoteka:help.png Upoštevajte, da mora vaša anketa za uporabo žetona:


  • "operator primerjave". Na spustnem seznamu izberite »operator primerjave«, ki ga želite uporabiti (»manj kot«, »manj kot ali enako«, »je enako«, »ni enako«, večje ali enako, večje kot, regularni izraz).


  • desni operand: primerjalna vrednost. Tip primerjalne vrednosti lahko izberete z izbiro ustreznega zavihka v urejevalniku pogojev. Ko ustvarite pogoj, lahko kot primerjalno vrednost izberete vnaprej določeno vrednost (odgovor), konstanto, vprašanje, atribut udeleženca ankete ali regularni izraz:


Datoteka:edit-conditions-comparisonvalueTab.png

Primer osnovnih pogojev in kako jih ustvariti

Primer osnovnih pogojev in kako jih ustvariti

  • Prikaži vprašanje v primeru, ČE "je bil odgovor na vprašanje1 v naprej določen odgovor 'Moški'"
    • preizkušena vrednost = odgovor na vprašanje1
    • primerjalni operator = je enako
    • primerjalna vrednost = vrednost primerjamo z odgovorom 'Moški"


Datoteka:edit-simple-condition-predefanswer.png


  • Prikaži vprašanje 'Alkohol' če "je odgovor na vprašanje 'Starost' večji ali enak številski vrednosti '18'"
    • testirana vrednost = odgovor na vprašanje 'Starost' '
    • operator primerjave = večji ali enak
    • primerjalna vrednost = konstantna vrednost '18'


Datoteka:edit-simple-condition-constant.png


  Pozor : Ko uporabljate konstantno 'primerjalno vrednost' za datumsko vprašanje, ne glede na obliko datuma, nastavljeno v anketi, morate uporabiti obliko datuma LLLL-MM-DD.



  • Pokaži vprašanje 'Alkohol' če "je odgovor na vprašanje 'Rojstni datum' večji od 2000-01-01"
    • testirana vrednost = odgovor na vprašanje 'Rojstni datum' '
    • operator primerjave = večje ali enako
    • primerjalna vrednost = '2000-01-01' (oblika v konstantnem polju: 2000-01-01 )



  • Pokaži vprašanje 'Alkohol' če "'DrinkingHistory' atribut udeleženca" se ujema z nizom 'Da'.
    • testirana vrednost= ' DrinkingHistory' vrednost, vzeta iz tabele udeležencev ankete
    • operator primerjave = enako
    • primerjalna vrednost = konstantna vrednost 'Da'


Datoteka:edit-simple-condition-leftToken.png

Pogoji in scenariji v LimeSurvey

Privzete kombinacije pogoja

Kot smo že povedali, LimeSurvey samodejno določi kateri logični operator (IN/ALI) bo izbran med pogoji, kar je odvisno od samega 'konteksta'.

Upoštevajte tudi, da vrstni red, po katerem smo definirali osnovne pogoje, ni pomemben. LimeSurvey jih bo samodejno preuredil po lastni presoji.

Poglejmo si to podrobneje.


Prvo pravilo: pogoji z isto preizkušeno vrednostjo so med seboj povezani z ALI

Ko imate več pogojev, so ti ORed' skupaj, če imajo enako testirano vrednost. To velja, če pogoj velja za več odgovorov, ki pripadajo enemu samemu vprašanju. Na primer, spodaj je bil uporabljen pogoj za tri odgovore, ki pripadajo istemu vprašanju - če je odgovor na vprašanje 'FavColour' enak 'green' ALI je odgovor na vprašanje 'FavColour' enak 'rdeč' ALI' odgovor na vprašanje 'FavColour' je enak 'blue', potem bo anketirancu prikazano vprašanje 'BirthDate':


Datoteka:edit-conditions-naturalOr-edit.png Datoteka:edit-conditions-naturalOr-result.png


Datoteka:help.png Opomba: Če želite izbrati več vnaprej določenih odgovorov, ne pozabite držati tipke Shift ali Ctrl, medtem ko izbirate testirane vrednosti.


Drugo pravilo: pogoji z isto preizkušeno vrednostjo so med seboj povezani z IN

Ko imate več pogojev, se zanje uporabi IN skupaj, če nimajo enakih testiranih vrednosti'. Na primer, spodaj lahko vidite primer za več pogojev, ki temeljijo na različnih prejšnjih vprašanjih - "Če je odgovor na vprašanje 'Alkohol' enak 'Y', je odgovor IN odgovor na vprašanje 'Spol' enak 'F'", nato se anketirancu prikaže vprašanje 'Uživanje alkohola':


Datoteka:edit-conditions-naturalAND-editA.png Datoteka:edit-conditions-naturalAND-editB.png
Datoteka:edit-conditions-naturalAND-result.png


Vprašanja z več izbirami

Opomba: Ta odstavek se nanaša na vprašanja tipa Več možnosti in Več možnosti s komentarjem in ne na Polja (številke) (pri tem tipu vprašanj je vsako potrditveno polje definirano kot posamezen vnos in se s tem ne obravnava kot preostala vprašanja z več izbirami).


V urejevalniku pogojev se vprašanja tipa Več možnosti in Več možnosti s komentarjem prikažejo na dva različna načina:

  • Prvi način - Skupina potrditvenih polj: vam omogoča določitev pogojev za vse možne odgovore tega vprašanja
  • Drugi način - Nova možnost odgovora: vam omogoča določite pogojev za vsak odgovor posebej


Datoteka:edit-conditions-MultipleOptions1.png


Okus skupine potrditvenih polj

Zdaj pa se osredotočimo na primer, da bomo bolje razumeli razliko med obema okusoma. Predstavljajmo si, da želimo prikazati vprašanje 'Pointchoice' le, če respondent označi vsaj enega od 'testiranih odgovorov', navedenih pod vprašanjem 'MultipleOrganizations'.

Kot je navedeno zgoraj, vam skupina okusov potrditvenih polj omogoča, da nastavite pogoje za vse možne odgovore zadevnega vprašanja. Zato so kot primerjalne vrednosti spodaj izbrane le možnosti, ki se nanašajo na odgovornosti:


Datoteka:edit-conditions-MultipleOptionsOR.png


Kot lahko opazimo, se pogoji spremenijo v OR zaradi okusa »Skupina potrditvenih polj«, izbranega na začetku.:


Datoteka:edit-conditions-MultipleOptionsOR-result.png


IN določanje pogojev v vprašanjih z več odgovori

Zdaj pa se osredotočimo na podoben primer. Vendar tokrat iščemo le najbolj aktivne člane, da jim postavimo dodatna vprašanja. Za to uporabljamo okus Eno potrditveno polje, ki vam omogoča, da nastavite pogoje za vsako potrditveno polje posebej.

V tem primeru bo vprašanje X prikazano, če sta označena A in B:


Datoteka:edit-conditions-MultipleOptionsAND2.png
Datoteka:edit-conditions-MultipleOptionsAND3.png


Ko končate, lahko opazite, da sta oba pogoja zdaj dodana IN.


Datoteka:edit-conditions-MultipleOptionsAND-result.png


To pomeni, da vaše vprašanje ne bo prikazano, razen če sta izpolnjeni obe testirani vrednosti (izbrana podvprašanja).


Primer uporabe pogojev ALI med različnimi vprašanji

Zdaj lahko trdite, da morate včasih imeti pogoje ORed, tudi če so nastavljeni za različna vprašanja (to je za različne testirane vrednosti). Zato imamo scenarije!


Opredelitev scenarija

Scenarij je ročno ustvarjena skupina pogojev' v katerem so pogoji neodvisno ovrednoteni od pogojev iz drugih scenarijev. Zapleteno stanje, ki izhaja iz prepletanja več scenarijev bo izpolnjeno, če bo izpolnjen le en scenarij. Z drugimi besedami: scenariji so logična skupina pogojev, ki z upoštevanjem zgoraj navedenih pravil in medsebojne ALI povezave predstavljajo zapletene okoliščine.

Celoten zgornji opis velja znotraj posameznega scenarija. Pri tem tudi velja, da so vsi novi pogoji ustvarjeni znotraj "Prvotnega scenarija".


Dodajanje vprašanja v dodaten scenarij

Ko ustvarite (ali urejate) pogoj, lahko spremenite scenarij v katerem je shranjen pogoj:


Datoteka:edit-conditions-EditorView-Scenario.png


Če morate določiti pogoj v drugem scenariju kot prvotnem, kliknite na ikono Dodaj scenarij File:Plus.png in vnesite številko scenarija: File:Default scenario edit.png

ID številka scenarija nima večjega pomena zato lahko imajo različni scenariji naključno izbrane ID številke.



Številko dodeljeno scenariju lahko spremenite s klikom na ikono . Nato morate izpolniti obrazec, ki se pojavi v isti vrstici.


Datoteka:edit_scenario_conditions.png


Kot smo že omenili, številke scenarijev nimajo nobenega vpliva kako pogoje vrednotimo. Vendar pa je sprememba številke scenarija pomembna, ko želimo:

  • določiti v kakšnem vrstnem redu želimo, da se scenariji prikazujejo v tiskani verziji anketnega vprašalnika
  • združiti pogoje dveh scenarijev (v primeru združevanja scenarija 10 s scenarijem 1 le preštevilčite scenarij 10 z ID številko prvega scenarija).


Primer: ustvarjanje treh scenarijev

Če želite ustvariti tri scenarije, potrebujete vsaj tri pogoje in vsakemu od njih dodate drugačen ID scenarija. Ko bo končano, bodo scenariji med seboj povezani preko operatorja 'ALI'. Na primer, lahko izgleda takole:


IN proti ALI v istem scenariju

V določenih primerih lahko končate z logičnima operaterjema IN in ALI v istem scenariju:


Datoteka:And vs OR example.png


LimeSurvey bo vedno uporabil prvi ALI. Za nadaljnje podrobnosti o tem si lahko ogledate naslednji članek Wikipedije na Boolean algebra.

Vendar. vrstni red operacij lahko opazujemo tudi v polju Relevance equation. Za zgornji primer je enačba ustreznosti označena spodaj:


Datoteka:AND vs OR relevance eq.png


Kot lahko opazimo, je za logične operacije ALI dodan niz dodatnih oklepajev, da bi programska oprema vedela, da mora biti najprej "izračunana".


Pomoč: Za več informacij o enačbah ustreznosti preverite wiki razdelka ExpressionScript - Presentation in enačba ustreznosti.

Kako kopirati pogoje

Funkcionalnost pogojev kopiranja lahko uporabite, če želite uporabiti isti nabor pogojev, kot ste jih uporabili za vprašanja od 5 do 10. Na ta način vam ne bo treba ročno znova ustvarjati pogojev, ki ste jih uporabili za prejšnja vprašanja.

Če želite začeti kopirati pogoje, morate najprej izbrati vprašanje, za katerega se pogoj(-i) uporabljajo (v našem primeru vprašanje 'LowQ'). Nato izberite pogoje, za katere želite, da se kopirajo, in izberite vprašanje, ki mu želite dodati pogoje (v našem primeru vprašanje 'Alkohol').



Opomba: Pogoje lahko nastavite samo na podlagi vprašanj, ki se pojavijo pred vprašanjem, na katerega je postavljen pogoj.

Prosimo, bodite pozorni na delovanje pogojev kopiranja, ko želite kopirati in uporabiti nabor pogojev, ki se nahajajo pod različnimi scenariji, za drugo vprašanje, ki uporablja enake ali drugačne številke id scenarija. Če želite povzeti morebitne primere, si oglejte naslednji primer:

  • želite kopirati scenarij 1 - pogoj A, scenarij 1 - pogoj B, scenarij 7 - pogoj C in scenarij 7 - pogoj D iz vprašanjaX v vprašanjeY
  • VprašanjeY že vsebuje scenarij 1 - pogoj A, scenarij - pogoj C , Scenarij 6 - Pogoj E, Scenarij 8- Pogoj F.
  • Ko bodo kopirani, bodo naslednji pogoji uporabljeni za vprašanje Y:
    • Scenarij 1: Pogoj A, Pogoj B, Pogoj C -> Pogoj A ni več kopiran, saj že obstaja v vprašanju Y, kopira se samo pogoj B.'
    • Scenarij 6: Pogoj E -> ni prizadet
    • Scenarij 7: Pogoj C, pogoj D - > nov scenarij je ustvarjen, kjer sta mu dodana dva pogoja
    • Scenarij 8: Pogoj F -> ni prizadet


Ponastavi pogoje

Za hitro ponastavitev vseh pogojev ankete kliknite eno nastavitev, povezano z anketo, poiščite Orodja v zgornji orodni vrstici in kliknite Ponastavi pogoje:'



Nato na naslednji strani potrdite, da želite nadaljevati, in vsi pogoji bodo izbrisani.


Stvari, na katere morate biti pozorni

Splošni premisleki

Obstaja nekaj osnovnih pravil na katere morate paziti preden določite pogoje v zvezi z vprašanjem:

  • Ko enkrat določimo pogoj za določeno vprašanje, se to vprašanje ne bo prikazalo razen če bo pogoj izpolnjen
  • Pogoje je možno nastaviti le na osnovi vprašanj, ki se pojavijo pred vprašanjem na katerem nastavljamo pogoj
  • Če v anketi spremenimo vrstni red vprašanj, LimeSurvey v primeru prekinitve že nastavljenih pogojev ne prikaže posebnega opozorila. Zato priporočamo, da pogojev ne določate dokler niste povsem zadovoljni z vrstnim redom vprašanj in skupin v vaši anketi
  • Spreminjanje pogojev je omogočeno tudi, ko je anketa že aktivirana vendar je to potrebno narediti previdno, saj ni doslednosti preverjanja


Pogoji, ki uporabljajo prednastavljene odgovore oblike 'brez odgovora'


Nastavitev naslednjega pogoja »Prikaži vprašanje 'FavColour', če je odgovor na vprašanje 'Spol' 'brez odgovora'« v resnici pomeni "prikaži vprašanje 'FavColour', če je bilo vprašanje 'Spol' prikazano udeležencu ankete, ki ni oddal odgovora" .


 Hint: Če želite možnost brez odgovora prikazati kot vnaprej določen odgovor, vprašanje ne more biti obvezno.


Verižno pogojevanje

Če postavite pogoje za vprašanje, ki samo po sebi ima pogoje, se lahko vaša anketa obnaša na načine, ki jih morda niste predvideli. Na primer, tipičen stranski učinek je, da če skrijete vsa vprašanja v skupini z verižnimi pogoji, bo glava skupine še vedno prikazana, razen če popravite te pogoje, kot je razloženo spodaj.



Datoteka:chained_conditions2_bad.png


V zgornjem primeru je vprašanje 'Alkohol' prikazano, če je respondent že prej odgovoril na vprašanje 'AAMN' z 'Ne (N)'. Vendar pa vprašanje 'AAMN' morda ne bo prikazano na koncu, če respondent ni izbral prejšnjega vprašanja ('Spol') odgovora 'Moški (M)'. V tem scenariju vprašanje 'Alkohol' ne bo prikazano, če je bil predhodno izbran 'Moški (M)'.

Če želite prikazati vprašanje 'Alkohol', morate kopirati pogoje iz prejšnjih vprašanj v tisto, ki ga urejate. Če želite prikazati vprašanje 'Alkohol', morate nastaviti naslednji nabor pogojev:

  • Prikaži 'AAMN', če je odgovor na 'Spol' 'Moški (M)'
  • Pokaži 'Alkohol' če je odgovor na 'Spol' 'Moški (M)' in, če je odgovor na 'AAMN' Ne (N)'.

Po popravku bi pravilen nabor pogojev za Q3 izgledal sledeče:



Če torej načrtujete zapleteno anketo z velikim številom pogojev, se prepričajte, da anketo preizkusite za čim več različnih kombinacij rezultatov, ki si jih lahko zamislite.

Če želite izvedeti več o tem, kako lahko kopirate pogoje v LimeSurvey, se pomaknite navzgor ali kliknite tukaj, da nadaljujete z branjem posvečenega wiki razdelka.


Omejitve in bližnjice

Prikaz napredka

Če ustvarite anketo, v kateri je veliko vprašanj preskočenih zaradi pogojev, vrstica napredka preskoči nabor vprašanj ali pa se anketa konča pri 50 %.

Da bi se izognili takšnemu vedenju, je treba vprašanja, ki bi jih lahko preskočili, razporediti med prikazana vprašanja. Na ta način se na odgovor preskoči le eno ali dve vprašanji.

Na primer, glede na vprašanje 1 (vprašanje da ali ne) bo prikazanih 14 vprašanj (2A do 15A), če je odgovor na vprašanje 1 'Da', ali 2B do 15B, če je bil odgovor na vprašanje 1 'Ne'.

Če vprašanja razporedite v eno skupino in jih razporedite kot 2A, 2B, 3A, 3B in tako naprej, boste dobili skoraj pravilno vrstico napredka, medtem ko vprašanja razporedite kot 2A, 3A, 4A, [...], 2B, 3B, 4B, ... boste dobili vrstico napredka od 0 do 50 % ali od 50 % do 100 %, odvisno od odgovora na prvo vprašanje.


Nastavitev konstante pri vprašanju tipa Datum

Uporabiti boste morali interni prikaz vrednosti Datuma, ki je YYYY-MM-DD, da boste lahko opredelili konstanto.


Nastavitev pogojev pri izbiri možnosti "Drugo" v primeru vprašanja tipa Vprašanja z več izbirami

V vrsti vprašanja z več možnostmi lahko kot veljavno izbiro uporabite možnost »Drugo«, ki je navedena v vrsti vprašanja, vendar zanjo ne morete nastaviti pogojev. Na primer, vprašanje št. 1 pravi "Katero barvo najraje uporabljate?" Možnosti potrditvenega polja za odgovor so Modra, Črna in Drugo. Če udeleženec izbere Modro, lahko postavite pogoj. Če udeleženec izbere črno, lahko določite drugačen pogoj. Če pa udeleženec izbere "Drugo" in nekaj vnese v besedilno polje, NI mogoče nastaviti pogoja. LimeSurvey ne prepozna, če je udeleženec izbral pogoj "Drugo". To NI napaka, ampak omejitev.

V primeru, da anketiranec izbere odgovor 'Drugo', le to nikjer ni razvidno oziroma posebej zabeleženo. Edini način, da preverimo ali je anketiranec izbral to možnost ali ne je, da preverimo ali je bil vnesen tekst v polje za komentar.

Vendar pa zaradi specifičnega načina obravnave Vprašanja z več izbirami testiranje besedilnega polja pri možnosti 'Drugo' nikoli ni bilo izvršeno.

Vendar lahko zgoraj opisano težavo zaobidemo in sicer tako, da dodamo ekspliciten odgovor, ki ga poimenujemo 'Drugo' in ne že v naprej nastavljeno možnost 'Drugo'. Nato dodamo dodatno polje za vprašanje tipa Kratko besedilo, ki se bo prikazalo v primeru, če je bil izbran odgovor 'Drugo'.


Kako uporabljati oklepaje pri matematičnih izrazih?

Ne morete!

Če želite ustvariti naslednji izraz:

 (pogoj1 ALI pogoj2) IN (pogoj3 ALI pogoj4)

morate narediti sledeče:

(pogoj1 IN pogoj3) ALI

(pogoj1 IN pogoj4) ALI

(pogoj2 IN pogoj3) ALI

(pogoj2 IN pogoj4)