Uncaught TypeError: Cannot read property 'columnType' of undefined
Всем привет.
Пытаюсь сделать кастомное праймари поле для раздела "контакты" в мобильном приложении.
Поле должно состоять из двух уже существующих в объекте Contact полей: Name и AnLastVisitDate.
![]()
![]()
Код:
Terrasoft.sdk.GridPage.setPrimaryColumn("Contact", {
columns: ["Name", "AnLastVisitDate"],
vadFunction: function(values) {
var contactName = values.Name;
var lastVisitDate = values.AnLastVisitDate;
return "(" + lastVisitDate.toString() + ") " + contactName;
}
});
При переходе в раздел "контакты" после синхронизации получаю следующую ошибку: "Uncaught TypeError: Cannot read property 'columnType' of undefined".
Подозреваю, что ошибка связана с тем, что при отрисовке раздела, движок не может найти какое-то из этих полей. (Но это не точно.)
Поэтому проверил манифест на синхронизацию этих полей:
![]()
При этом добавив эти поля по отдельности через мастер мобильного приложения, отображается корректно:
![]()
Может кто сталкивался с чем-то подобным: в чём может быть дело?
Нравится
Добрый день.
Рекомендую вам попробовать нечто подобное, без приведения к toString():
Terrasoft.sdk.GridPage.setPrimaryColumn('Account', {
columns: ['Name', 'AnLastVisitDate'],
convertFunction: function(values) {
if (!Ext.isEmpty(values.AnLastVisitDate)) {
return values.Name + ' (' + values.AnLastVisitDate+ ')';
} else {
return values.Name;
}
}
});
Михаил, спасибо за подсказку!
Результат есть.
Terrasoft.sdk.GridPage.setPrimaryColumn("Contact", {
columns: ["Name", "AnLastVisitDate"],
vadFunction: function(values) {
if (!Ext.isEmpty(values.AnLastVisitDate)) {
return "Тест_2";
} else {
return "Тест_1";
}
}
});
Однако, столкнулся со странным поведением системы при подключении своего модуля.
Исчезает строка поиска и фильтров раздела.

Как только модуль отключаю, снова всё на месте.

Модуль подключая в группе "Models" манифеста.
