- Posts: 11
- Thank you received: 0
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
Assessment results
- asiafasif
- Topic Author
- Offline
- New Member
Your LimeSurvey version: 5.3.32
Own server or LimeSurvey hosting: own
Survey theme/template:
==================
Hi Guys, I am using Assessment mode in survey. I have 3 variants of results that will be shown to users. However I want them to be random. For example, apart from what the score has been achieved, assessment message should be random (i.e. any variant out of 3). Is it possible at all?
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 12923
- Thank you received: 3977
and why do you use assessments at all?
1. assessment values and scores are not saved in the database.
2. you do not want to show the result to the respondent but a "random" message.
This is the same as if you just show a random message.
And to calculate and save the score (using assessment values) you may use ExpressionScript and the property ".valueNAOK"
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- asiafasif
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
Please Log in to join the conversation.
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11658
- Thank you received: 2742
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 12923
- Thank you received: 3977
If you have three independent rules, of course, all are shown.After that I created three assessment rules for each question group. But at the assessment page it is showing all three messages instead of just one.
Therefore I said before:
Don't use assessments rules, use ExpressionScript.
Why do you do this? Only to get different messages? Not necessary at all.For that I have created three groups with same questions. Then I randomized them
Use ExpressionScript with a nested IF (the random number you created already), like
{if(randnumber==1,if(score<10,"Message1 for low score",if(score<25,"Message1 for medium score","Message1 for high score")),if(randnumber==2,if(score<10,"Message2 for low score",if(score<25,"Message2 for medium score","Message2 for high score")),if(score<10,"Message3 for low score",if(score<25,"Message3 for medium score","Message3 for high score"))))}
This you enter in the end message.
That's all.
But, as @holch, always send a lss export of the relevant questions.
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- asiafasif
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
First of all thanks a lot for your help.
A little background: Survey is about stress prevention. Scope of the survey is to check whether a participant click on the link (yet to be added) provided about stress prevention coaching at the end of the survey or not.
There are total 10 questions.
There are three different assessment messages which should be shown randomly regardless of scored points.
I am using assessment because participant needs to know about their score.
To achieve this I have created three question groups with same questions. User will be shown just one group randomly. In the first group I have added an extra equation question with message which will only show if all the previous questions are answered. I will do the same with other two question groups.
After the message, the survey will continue further with few more questions.
Now I am stuck at showing speedometer in the message. The code is inside but somehow it is not showing. I have attached the .lss file.
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 12923
- Thank you received: 3977
1. If you want to calculate something, you should use numeric codes and not these default codes (you may change this) "AO01", "AO02",...
Like this:
Always consider your analysis. Maybe you want to calculate some statistical tests, like t-Test, ANONA, or simple means and std.deviations.
Then you need numbers.
The mean of AO01 and AO04 is NOT A=02,5.
2. Now, I already told you to use ExpressionScript.
Then you need only one group and afterwards one (hidden) question of type "equation" with only
{sum(that.G02Q01.NAOK,that.G02Q02.NAOK,that.G02Q03.NAOK,that.G02Q04.NAOK,that.G02Q05.NAOK,...,that.G02Q10.NAOK)}
Your question G02Q33 contains HTML text, so you get this whole text as result, but not the value itself.
The actual text of G02Q33 you insert into the end-message with a surrounding IF
{if(random1==1,"The text of G02Q33",f(random1==2,"The text of G03Q33","The text of G04Q33"))}
Now you may remove all these assessment rules.
You see this is outdated from a time when there was no expression Manager/Script.
And as the assessment values aren't stored in the database it will be difficult to use it in the chart.
This afternoon I will create an example.
Joffm
To add something:
In my opinion these "assessment values" are only necessary if a. two or more answer options have the same value
b. there are negative values
Both you can't handle with the codes.
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 12923
- Thank you received: 3977
But at first:
1. Never copy/paste from a text processing tool like Word. You also copy the while HTML garbage.
2. As LimeSurvey is based on bootstrap use bootstrap classes.
The final layout (colors, spaces, etc.) is up to you.
3. Your coding seems to be wrong.
When I have a lot of stress in the normal items, I get a low result ?????
I saw this too late; now my calculation is also based on this.
But here is the survey.
The chart.
The only variable is "eqSum",.
Now you may use the example in the tutorial.
Joffm
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 12923
- Thank you received: 3977
In "eqSum2" there should only be
{sum(sum(that.Q2.sq_N),4*count(that.Q2.sq_R)-sum(that.Q2.sq_R))}
If there is more in the sample survey these were some tests.
Remove them.
Volunteers are not paid.
Not because they are worthless, but because they are priceless
Please Log in to join the conversation.
- asiafasif
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
Your survey and input was greatly helpful. It all worked out finally.
However, now I have another challenge. in the last group of questions, I have provided I link. I would like to see if the the participant clicked on the link or not, along with which random value the participant had out of 3. I would greatly appreciate your input.
Please Log in to join the conversation.
- holch
- Offline
- LimeSurvey Community Team
- Posts: 11658
- Thank you received: 2742
I would like to see if the the participant clicked on the link or not, along with which random value the participant had out of 3
The random value is stored in the database through the equation where it was created, so you should have this already.
Now checking if someone clicked on a link you presented is nothing that has to do with Limesurvey. You will have to find a solution how this works in general (probably Javascript) and then write this into a hidden question or something.
I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.
Please Log in to join the conversation.
- asiafasif
- Topic Author
- Offline
- New Member
- Posts: 11
- Thank you received: 0
Now I have another challenge. Lets say there is array with 10 questions. I want to have 5 questions with same code and 5 question with different code.
Answer1 code4
Answer2 code3
Answer3 code2
Answer4 code1
and for other five questions:
Answer1 code1
Answer2 code2
Answer3 code3
Answer4 code4
(Using different arrays for other set of question is unfortunately not an option as it is to check the behaviour of participants)
Please Log in to join the conversation.