Community Groups are officially here!
We've released Groups, a new feature that enables us to connect community members of similar industries and interests in a shared, private space. You can check out all of the details here, including information about who can join, how to join, and what Groups are currently offered. Please leave your feedback through this Community Groups Feedback Survey.

Making the limit of the random number depend on the values earned.

MStorrs
MStorrs United KingdomCommunity Member Qubie ✭
edited June 24 in Custom Code

I'm trying to make a lottery where the probability of winning is dependent on how a participant does during the survey. As a result I want to make a random number where the upper limit is based on a variable within the survey. I saw the below previous discussion that suggested "nesting" embedded data was not possible.

This would suggest I can't make a random number where the upper limit is based on how well the participant did. I had been planning to use the below coding.


RandomNumber = ${rand://int/ 1 : e://Field/VariableName}

If RandomNumber < Variable2 then

Win the Lottery

If RandomNumber ≥ Variable2 then

Lose the Lottery.


Can anyone help me to figure out how to code this. The only way I can think of would be to manually make a lot of if Random number = 1, If random number = 2 etc to manually code it but I thought there might be a faster way. Any help is appreciated.

Thank You

Best Answer

  • ahmedA
    ahmedA IndiaCommunity Member, XMPN Member Wizard ✭✭✭✭✭
    Accepted Answer

    You'll need to use JS for this.

    1. Create an ED (let's call it UpperBound) and store the value of the upper limit in it.
    2. Then, in any question before the random number is required and after the UpperBound value has been stored, add the following JS:
    Qualtrics.SurveyEngine.addOnReady(function () {
        let random_number = Math.random() * Number("${e://Field/UpperBound}");
        Qualtrics.SurveyEngine.setEmbeddedData("RandomNumber", random_number);
    });
    

    You can then use this RandomNumber ED, just like any other.

Answers

  • MStorrs
    MStorrs United KingdomCommunity Member Qubie ✭

    Does anyone know how to make the Qualtrics remember the Random Number generated so I can test if this value is less than a number? Thank You Ahmed for generating the random number that is brilliant but I also need help on the second part because I can't seem to make this work.

    Thank You