Вопрос
Мобильное приложение. Как добавить кнопку "Добавить" в справочное поле у которого нет своего раздела
Ответ
Согласно базовой логике мобильного приложения добавлять новые значения в справочных полях можно только в том случае если для этого поля есть раздел со страницей редактирования (например, поле «Ответственный» и раздел «Контакты»). Для реализации необходимо добавлять отдельную страницу редактирования и необходимые для работы колонки.
Для реализации необходимо следующее:
Terrasoft.LastLoadedPageData = {
controllerName: "Terrasoft.configuration.UsrnomberoflidEditPageController",
viewXClass: "Terrasoft.configuration.UsrnomberoflidEditPageView"
};
Ext.define("Terrasoft.configuration.view.UsrnomberoflidEditPage", {
extend: "Terrasoft.view.BaseEditPage",
alternateClassName: "Terrasoft.configuration.UsrnomberoflidEditPageView",
config: {
id: "UsrnomberoflidEditPage"
}
});
Ext.define("Terrasoft.configuration.controller.UsrnomberoflidEditPage", {
extend: "Terrasoft.controller.BaseEditPage",
alternateClassName: "Terrasoft.configuration.UsrnomberoflidEditPageController",
statics: {
Model: Usrnomberoflid
},
config: {
refs: {
view: "#UsrnomberoflidEditPage"
}
}
});
- создать схему, где прописать колонки, которые мы хотим отображать на странице (например, название схемы UsrMobileUsrnomberoflidModuleConfig (настройка колонок в новой странице)):
Terrasoft.sdk.GridPage.setPrimaryColumn("Usrnomberoflid", "Name");
Terrasoft.sdk.RecordPage.addColumnSet("Usrnomberoflid",
{
name: "primaryColumnSet",
isPrimary: true
},
[
{
name: "Name"
}
]);
Terrasoft.sdk.RecordPage.addColumn("Usrnomberoflid", {
name: "CreatedOn"
}, "primaryColumnSet");
- и подключить эти схемы в манифест. например, «UsrMobileApplicationManifestOpportunities»:
"Usrnomberoflid": {
"Edit": "UsrnomberoflidEditPage",
"RequiredModels": [
"Usrnomberoflid"
],
"PagesExtensions": [
"UsrMobileUsrnomberoflidModuleConfig"
]
},
Теперь если Вы нажмете на запись, то откроется информация о записи, если проведете swipe по полю справа налево, то откроется список доступных значений с быстрым фильтром.
Наглядные скриншоты: