Randomly show a dynamic number of rows

0

In my survey respondents indicate how many service lines they are involved in and then are later asked about these. I’m trying to set-up a grid question so that the number of services (rows) shown is based on the answer count to the previous multi-select question and that this number is not greater than 5 (so the question isn’t too long). I have found the custom script for randomly showing a subset of rows but if I set the number at 5 and the respondent is involved in fewer than 5 service lines, irrelevant services/rows are shown. I have found a way of counting the number of services selected at the prior question and can use this in place of the number 5 but I get 2 problems:

  1. If more than 5 services/rows are selected, the question gets too long
  2. Even though the ‘answer count’ function works and displays as many rows as are selected in the prior question, I always get an error message ‘Script Failed: Bad Script’

Here’s my script so far …

//Row IDs to be randomly hidden go here. Make sure they are comma separated, no spaces, and inside quotes.

%%questionsHideRan = “448,449,450,451,452,453,454,455,456,457,458,459,460,461,530” ;

 

//Number of rows you want shown from the list above. No quotes or commas are needed.

%%shown = [question(“answer count”), id=”142″];

 

//Do not change after this line.

%%arr = sgapiExplode(‘,’,%%questionsHideRan);

sgapiShuffle(%%arr);

foreach(%%arr as %%question)

{

sgapiHideQuestion(%%question,true);

}

for (%%i=0; %%i<%%shown; %%i++)

{

sgapiHideQuestion(%%arr[”.%%i],false);

}

 

I have tried a number of ways of stating the ‘answer count’ bit and amazingly these all work in terms of showing the number of rows selected in the prior question but I always get the error message. E.g. answercount(142) OR { [question(“answer count”), id=”142″]}

Anton answered
    0

    Hi Dominic, thank you. Was hoping to script this myself but yes that’s an option

    Anton answered
      0

      This is a bit outside my comfort level in scripting. In case you haven’t made progress on this, one option that you might consider is to consult with SurveyGizmo’s Programming Services Team:

      https://www.surveygizmo.com/programming-services/

      They can consult and assist with custom solutions like the one that you’re after.

      Cheers!

      Dominic Sharpe answered
        ×

        Login

        Question stats

        • Active
        • Views1144 times
        • Answers2 answers
        • Followers1 follower