Fred wrote:
1) I'm looking for ideas on how to tackle the presentation. It looks like an array of course, so an Array of Numbers question combined with equations/boilerplates is one option. But I can see it would require a lot of javascript tweaking to organize the questions in the browser. And as long as we are doing that we could just as well use numerics and multi-numerics and arrange them in the same manner. How likely is this to become unwieldy and buggy as we get into hundreds of questions?
I recommend to use the "array text" question type (link:
docs.limesurvey.org/Question+type+-+Arra...ey#Short_description) with a "numbers only" setting for the inputs and "show grand totals" enabled for columns:
docs.limesurvey.org/Question+type+-+Arra...vey#Show_grand_total
As for the presentation: The only solution seems to be some JavaScript to get the exact same layout, but this is getting very complex for such a vast range of questions.
An alternative might be to store all the equations in single questions of type equation and then use a text display question type with a table layout to place all placeholders nicely into such a tabular layout to show all the calculated values.
Fred wrote:
2) Many of the inputs are non-mandatory. But we also want to have subtotal rows which are mandatory and which either let the participant enter a subtotal manually or, if they have entered the preceding rows, just sum up those entries. Since I don't believe you can make one subquestion mandatory and another optional (except with js), this is another reason why I'm thinking lots of individual numeric questions would be more flexible.
You can make certain sub-questions mandatory by using the "Question validation equation" and the "question validation tip". The tip can be used to show a hint like "The subquestion 'How much beer do you drink each year' has to be answered" and the validation sinply needs to point to one or more sub-questions, e.g. by using a !is_empty() check.
Fred wrote:
3) What is the perfomance going to be like with this many equations and expressions? Can the Expression Manager keep up?
That is hard to predict. Generally, Limesurvey 1.92 is a little faster when it comes to equations but there have also been some speed improvements recently. But it should be possible to simply check on both system.
Another issue is the survey mode. If you put all these questions on one page, you can imagine that there will be a huge loading time. So running the survey in question by question or group by group with only some very few questions in each group would be my recommendation.
Fred wrote:
4) How will we fare with over 1000 columns in the survey_nnn table? We would use MyISAM storage, and theoretically it will be ok, but I'm wondering about real-world experience.
Again, this is hard to tell. Using lots of array questions will result in one column for each sub-question so you might run into some limitations.
Try activating the survey from time to time while designing it to check if you are getting problems here.
If so, the only solution is to split up the survey and pass some data from survey A into (hidden) questions of survey B if required.
Fred wrote:
5) Would we be better off just collecting data with a different tool? It's really not feasible in the time frame, but we could produce a better spreadsheet-like interface with jqgrid or another library. Or we could simply collect the data in 100s of Excel workbooks and consolidate (sounds fun!). Or Google app engine, google docs? Just thinking outside the box.
Do you want to re-invent the wheel or better try to make use off all of Limesurvey's capabilities and if necessary, extend some of these by some custom JavaScript?!
I think the biggest problem you might run into is the column limit of the DBMS. You can create a first draft of that survey, maybe just 5% of it and then use group export/import 20 times to get to the expected survey size to check if you can still activate the survey.
If the answer is "no" and there are lots of conditions which would have to be passed on from survey A to survey B when splitting it up, checking for other tools makes sense.
The general question is if other tools can easily do all the calculations at runtime AND present the forms in a more or less nice way.
Fred wrote:
Sorry for the long question!
Platinum donators are allowed to ask even longer questions