Difference between revisions of "Question class"
Line 55: | Line 55: | ||
print(Q3Multi);//{True,False,False,True} | print(Q3Multi);//{True,False,False,True} | ||
print(Q4Text);//string test | print(Q4Text);//string test | ||
+ | </source> | ||
+ | <span style="color:#DF8621"> Question_saveQuestions </span> | ||
+ | <source lang="javascript"> | ||
+ | QAS qas = new QAS (15723782,0); | ||
+ | qas.Save(); | ||
+ | qas.MakeCurrentQAS(); | ||
+ | print(qas.Id); | ||
+ | Dictionary d = { | ||
+ | "Q2Single": 1, | ||
+ | "Q3Multi": {true,false,false,true}, | ||
+ | "Q4Text": "test", | ||
+ | "Q5Scale": 2, | ||
+ | "Q6Number": 3, | ||
+ | "Q7OPen": "open", | ||
+ | "Q8SingleGrid": {1,2}, | ||
+ | "Q9MutiGrid": {{true,false},{false, true}}, | ||
+ | "Q10TextGrid": {"test1","test2"}, | ||
+ | "Q11ScaleGrid": {3,5} | ||
+ | }; | ||
+ | Question_saveQuestions(d, new QAS(qas.Id)); | ||
</source> | </source> |
Revision as of 09:21, 21 June 2019
Question
Base class for all question types
Methods
- object AsValue() - Convert the Question to plain object
- string ToString() - The string representation of the object.
Properties
- string ObjectTypeName { get; } - The name of the type of object.
- TypeInformation TypeInformation { get; } - Get information about this class.
Static Methods
- array Question_getLabelsOfLoadedQuestions() - Get labels of the questions that have been loaded in current session and might be saved upon completion
- Dictionary Question_loadQuestions() - Load questions
- Dictionary Question_loadQuestions(array questionLabels "Labels of the questions to load") - Load questions
- Dictionary Question_loadQuestions(array questionLabels "Labels of the questions to load", QAS qas "Qas to load data from") - Load questions
- Empty Question_saveQuestions(Dictionary questionData "Dictionary of labels and data", QAS qas "Qas to save data to") - Save questions
- Empty Question_unloadAll() - Save and remove all loaded questions. Useful if a called script is expected to change current values. Only deletes those referenced directly through question variables.
Examples
Question_getLabelsOfLoadedQuestions
//run in questionnaire context
number a = Q2Single;
array b = Q3Multi;
string c = Q4Text;
//...
array loadedQuestions = Question_getLabelsOfLoadedQuestions();
print(loadedQuestions);//{Q2Single,Q3Multi,Q4Text}
Question_loadQuestions
//run in questionnaire context
//Add this line to the top of script to increase performance
Question_loadQuestions({"Q2Single","Q3Multi","Q4Text"});
//then working with Q2Single, Q3Multi, Q4Text as normal
Question_saveQuestions
QAS qas = new QAS (15723782, 0);
qas.Save();
qas.MakeCurrentQAS();
number newQASId = qas.Id;
Dictionary d = Question_loadQuestions ({"Q2Single","Q3Multi","Q4Text"}, new QAS (118108496));
print(d);//{"Q2Single": 1, "Q3Multi": {True,False,False,True}, "Q4Text": string test}
//set data for new rpq by copy form rpq 118108496
Question_saveQuestions(d, new QAS (newQASId));
print(Q2Single);//1
print(Q3Multi);//{True,False,False,True}
print(Q4Text);//string test
Question_saveQuestions
QAS qas = new QAS (15723782,0);
qas.Save();
qas.MakeCurrentQAS();
print(qas.Id);
Dictionary d = {
"Q2Single": 1,
"Q3Multi": {true,false,false,true},
"Q4Text": "test",
"Q5Scale": 2,
"Q6Number": 3,
"Q7OPen": "open",
"Q8SingleGrid": {1,2},
"Q9MutiGrid": {{true,false},{false, true}},
"Q10TextGrid": {"test1","test2"},
"Q11ScaleGrid": {3,5}
};
Question_saveQuestions(d, new QAS(qas.Id));