Ошибка в исходном коде, которая делает импорт интервью в опросах некорректным.
Кусок кода из скрипта wnd_ContactInSurveyGridAreaScript,где очевидно видна ошибка,причем которые делают только "студенты". StartList и EndList - строковые,далее по коду идет сравнение строковых в условии цикла. Что больше из строк "8" или "12" ?
Очевидно в цикл не зайдет и ответы будут проигнорированы,если ваш вопрос будет содержать CheckBox,общий номер которого будет меньше 10,а номер последнего CheckBox этого вопроса будет больше или равно 10.
ContactInSurveyGridArea.IACDataset = PrepareDataset(
ContactInSurveyGridArea.IACDataset, 'ds_InterviewAnswerChoice')
var IACDataset = ContactInSurveyGridArea.IACDataset;
IACDataset.Open();
var StartList = StartListCell.substr(1, StartListCell.length);
var EndList = EndListCell.substr(1, EndListCell.length);
for (j = StartList; j = EndList; j++) {
var CheckBoxesName = 'CheckBoxX' + j;
Ошибку исправили самостоятельно.
Продукт был приобретен больше года назад, но сразу не удалось его внедрить,возникали проблемы интеграции с 1С и даже платная тех поддержка не смогла нам помочь. Решили купить другой продукт,этот отложить,пока не исправят ошибки. На днях запросил дистрибутив продукта и решили начать им пользоваться. Начали с простого - была необходимость в опросах(импорт,экспорт) и сразу ошибки. Причем элементарные и такая ошибка, которая показывают уровень программиста и тем более не могу понять,как это модуль прошел тестирование. )))))
Нравится
Добрый день!
Да, это ошибка. В условии цикла действительно сравниваются строки, а не целочисленные значения.
Если переписать так:
if (TypeID == sqtMultipleSelection) { ContactInSurveyGridArea.IACDataset = PrepareDataset( ContactInSurveyGridArea.IACDataset, 'ds_InterviewAnswerChoice') var IACDataset = ContactInSurveyGridArea.IACDataset; IACDataset.Open(); var StartList = StartListCell.substr(1, StartListCell.length); var EndList = EndListCell.substr(1, EndListCell.length); StartList = StartList * 1; EndList = EndList * 1; for (j = StartList; j <= EndList; j++) { var CheckBoxesName = 'CheckBoxX' + j;
То всё будет хорошо.
Людям свойственно делать ошибки. Мы стараемся их исправлять оперативно.