By mri2t - 3/2/2016
Hi,
I have a survey that is defined as follows:
<survey Demo> / pages = [1=infostatement1; 2=infostatement2; 3=consentform; 4=demographics1; 5=demographics2; 6=vig_instructions; 7=noreplace(vig1, vig2, vig3, vig4, vig5); 8=survey1_pg1; 9=survey1_pg2; 10=survey1_pg3] / showbackbutton = false / showquestionnumbers = false / recorddata = true </survey>
How can do I capture in the datafile if vig1, vig2, vig3, vig4 or vig5 was displayed for page 7?
I would be grateful if anyone can help.
|
By Dave - 3/2/2016
The only way to capture that information would be to run the <surveypage>s via a <block>, not a <survey>, which will result in (a) a different data format ("long" instead of "wide") and (b) no ability to navigate back and forth between pages.
<block Demo> / trials = [1=infostatement1; 2=infostatement2; 3=consentform; 4=demographics1; 5=demographics2; 6=vig_instructions; 7=noreplace(vig1, vig2, vig3, vig4, vig5); 8=survey1_pg1; 9=survey1_pg2; 10=survey1_pg3] </block>
The / showquestionnumbers = false attribute most be specified within each individiual <surveypage> element.
|
By mri2t - 3/3/2016
Hi Dave,
Thanks for the prompt reply. I have changed the script to run the survey via a <block> (instead of <survey>) and it is still not capturing which Vignette (i.e., vig 1, 2, 3, 4 or 5) is displayed. I have ensured that the "/ showquestionnumbers = false" attribute is specified for every <surveypage> element. I also tried added adding "/ trialcode = "Vignette 01" but to no avail. Here is an example of how one of the Vignettes is defined in my survey:
<surveypage vig1> / fontstyle = ("Arial", 2%, true, false, false, false, 5, 0) / caption = "Vignette" / questions = [1=vig1] / nextbuttonposition = (70%, 55%) / nextlabel = "PRESS TO CONTINUE" / showpagenumbers = false / showquestionnumbers = false / recorddata = true / trialcode = "Vignette 01" </surveypage>
<caption vig1> / caption = "Inquisit is great!" / fontstyle = ("Arial", 2%, false, false, false, false, 5, 0) / position = (10%, 10%) </caption>
Thanks for your help!
|
By Dave - 3/3/2016
I wasn't aware that the <surveypage> elements at issue do not actually contain any questions requiring responses, but merely display some text via a <caption>. As such, there actually isn't actually any data to record for said pages and that's why nothing shows up.
There are a couple of options here then: (1) You can switch to standard <trial> / <text> elements to display your vignettes. (2) You can set a <value> indicating the vignette displayed and log that value to the data file:
<surveypage vig1> / ontrialbegin = [values.vignetteshown = 1] ... </surveypage>
<surveypage vig2> / ontrialbegin = [values.vignetteshown = 2] ... </surveypage>
<values> / vignetteshown = 0 ... </values>
<data> / columns = [... values.vignetteshown ...] ... </data>
(3) Somewhat hack-ish: You can put some dummy question on the pages, which will force them to be logged to the data file:
<block myblock> / trials = [1 = noreplace(vig1, vig2)] </block>
<surveypage vig1> / fontstyle = ("Arial", 2%, true, false, false, false, 5, 0) / caption = "Vignette 1" / questions = [1=vig1; 2=_] / nextbuttonposition = (70%, 55%) / nextlabel = "PRESS TO CONTINUE" / showpagenumbers = false / showquestionnumbers = false / recorddata = true </surveypage>
<caption vig1> / caption = "This is the 1st vignette" / fontstyle = ("Arial", 2%, false, false, false, false, 5, 0) / position = (10%, 10%) </caption>
<surveypage vig2> / fontstyle = ("Arial", 2%, true, false, false, false, 5, 0) / caption = "Vignette 2" / questions = [1=vig2; 2=_] / nextbuttonposition = (70%, 55%) / nextlabel = "PRESS TO CONTINUE" / showpagenumbers = false / showquestionnumbers = false / recorddata = true </surveypage>
<caption vig2> / caption = "This is the 2nd vignette" / fontstyle = ("Arial", 2%, false, false, false, false, 5, 0) / position = (10%, 10%) </caption>
<textbox _> / required = false / position = (-10%, -10%) </textbox>
Hope this helps.
|
By mri2t - 3/9/2016
Thank you, Dave. Your help is greatly appreciated!
|
|