Preloaded rosters with different source question


We conducted a baseline survey on manufacturing firms and are now about to launch the second wave. In the survey for the second wave we want to preload some information about which machines the firms use.

Our issue is:
We first ask Q1 : Which machines do you currently use? (multi-select question with yes/no buttons)
Here the respondents should click “Yes” or “No” based on whether they are using the machine now, at the time of the second wave.

We then have a roster that is generated by source question Q1, in which we want to ask, for each of the machines that the firm is currently using, why they started using it now but were not using it before? Of course, we only want to ask this question if at baseline the firm told us they were not using that machine but now, at W2, they are telling us that they are using that machine.

To do this, the first question inside the roster is a preloaded question Q2 : “Firm was using the machine at baseline” (single-select, with Yes / No answer options. The goal is that we then ask Q3 “Why were you not using this machine when we last interviewed you, but only started using it recently?” and Q3 should only appear if the firm was not using the machine at baseline, so if Q2 == 0.

The problem is that when we preload Q2 and give a value of 1 or 0 to each machine, the source question Q1 appears to be all filled in with “Yes” for every machine. The reason is that since we give a value of 0 or 1 to every machine, the Designer interprets it as if the roster should include all the machines, and so automatically makes all the machines in Q1 appear with “Yes” preloaded.

Is there a way to add a preloaded question (Q2) inside a roster that is generated from a question that is not preloaded (Q1), and make sure that Designer does not automatically preload the source question (Q1) based on how many preloaded answers I give for Q2?

Alternatively, is there any other way we can approach this issue?

Thanks a lot! Any help would be greatly appreciated!

This is exactly the cause of the problem. You are specifying the information into the line of the roster, so that line is ‘active’ meaning it only exists if the corresponding condition in the trigger question is satisfied (in the case of a multiselect-triggered roster - there is a YES answer to the corresponding item in Q1).

The problem is easily solved if you replace your Y/N question Q2 with a (possibly hidden) multiselect Q2 outside of the roster and add a condition for Q3 referring to that Q2 not containing the code of the item in the roster @rowcode (provided the codes didn’t change between the years).

There are other approaches of course, but this one looks to me like a good starting point.

Best, Sergiy

Thank you Sergiy! This was very helpful! Great alternative way to deal with the issue.

I now moved Q2 to outside of the roster and added @rowcode != Q2[0] as the enabling condition for Q3. However, there are still some roster lines appearing for the machines that were used at baseline and are still being used now (which should not appear). I guess I am using the wrong enabling condition. Can you help me find the right one to use?

I have also tried @rowcode != Q2, but it gives me the following error: “Operator ‘!=’ cannot be applied to operands of type ‘int’ and ‘int’.”

Thank you so much!

You are right that the incorrect behavior is caused by the incorrect condition you wrote.

See example section “PANEL SURVEY EXAMPLE” in the “Public example User questions and common patterns

Best, Sergiy