How to randomise a block of questions based on the order of randomisation of the previous block? | XM Community
Solved

How to randomise a block of questions based on the order of randomisation of the previous block?

  • 7 August 2018
  • 9 replies
  • 140 views

Hi,
Anyone know how to randomise a block of questions based on the order of randomisation of the previous block? The second block of questions need to be presented in the same order as those of the previous randomised block. Support team can't seem to help with this. Would very much appreciate any help?

Best,
Fatoumata
icon

Best answer by mcoverdale 8 August 2018, 17:35

View original

9 replies

Userlevel 7
Badge +27
Hi @Fatou
Its little tough to explain the logic so i have attached the .qsf file of a test survey , if you have any doubt about logic then you can ask here
here is preview link to the suvey
https://bit.ly/2OQCcNJ
Hi @Anonymous24,

Thanks so much for your response. Unfortunbately I can't open the qsf file - don't think NHS computers support it. Any chance you can help with that? I am a novice at all this. Thank you!
Userlevel 7
Badge +27
Hi @Fatou
Read this section on how to use the .qsf file
OK thank you!
Badge +1
@Fatou , hope these screenshots will help you..

!
!
!
Badge +3
Hi @Fatou,

If I am correctly understanding what you are trying to do then I have done what you are asking in a way that is similar to what is described above but using the loop and merge instead of survey flow. I'm not sure if it is easier or more difficult than what is described, but I hope it helps.

You will need to have the questions in the first block randomized, either by using loop and merge or randomization in the survey flow. Then create an embedded data field for each order position (i.e. 1st, 2nd, 3rd etc.) and use the JavaScrip below to set all the fields to "No" (I put this JS into the instructions that precede the block).

!

Then use the JavaScript that I have included below to save the information that needs to be presented in the next block (for you that would be the questions) into each of the embedded data fields based on the presentation order. Essentially what the code does is fill the first embedded data field with the first item presented then, when the next item is presented, it fills the next one because the previous is already filled.

!

Finally, put the piped text for each of the embedded data fields, in order, into the loop and merge of the second block (I have a picture of what is will look like below). You can then pipe in the text from loop and merge into the new question.

!
Hi @mcoverdale,

Thank you so much for your response, really appeciate it. I will give it a go with my team, wish us luck, thanks again.

Best,
Fatou
Badge +3
Hi @Fatou ,

No problem. Best of luck!

-Michelle
Also @akshay11,

Thanks very much for the screen shots!

Best, Fatou

Leave a Reply