Публикация

Сообщение: TypeError: undefined is not an object (evaluating 'Terrasoft.sdk.RecordPage.getColumns(model, columnSetName).get(columnName).columnOriginalConfig') [Mobile]

Симптомы

В мобильном приложении при переходе в один из разделов происходит ошибка:

Тип: Terrasoft.SourceCodeException

Сообщение: TypeError: undefined is not an object (evaluating 'Terrasoft.sdk.RecordPage.getColumns(model, columnSetName).

get(columnName).columnOriginalConfig')

Дополнительная информация:

Script: file:///private/var/mobile/Containers/Bundle/Application/4C00C070-499C-4318-9653-8938B2A3B608/bpm'online.app/www/Common/Terrasoft.Mobile.Combined.js%0D%0A%09Line: 7698"

Причина

Пользователь удалил базовую колонку через дизайнер

Решение

1) В конфигурации создаем новый "модуль" с именем UsrMobileOverrideUtilities

добавляем в него такой текст: 

Ext.define("Terrasoft.sdk.RecordPage.Override", {
    override: "Terrasoft.sdk.RecordPage",
    configureColumn: function(model, columnSetName, columnName, columnConfig) {
        if (!Terrasoft.sdk.RecordPage.getColumns(model, columnSetName).get(columnName)) {
            return;
        }
        this.callParent(arguments);
    }
});

2) Меняем пользовательский манифест обычно он называется UsrMobileApplicationManifestCustom

добавляем в него такой блок:

"CustomSchemas": [
    "UsrMobileOverrideUtilities"
],

Необходимые условия и возможные ограничения

Базовая колонка использовалась в одном из базовых скриптов мобильного приложения

Нравится

Поделиться

0 комментариев
Показать все комментарии