Как работать с редактируемым реестром
Glossary Item Box
Общие сведения
Начиная с версии 7.9.0 в мобильном приложении bpm'online добавлена возможность использования редактируемого реестра. Для этого создан новый компонент Terrasoft.controls.EditList. Этот компонент отображает колонки для редактирования, что позволяет изменять записи в реестре, не открывая отдельную страницу редактирования.
Для того чтобы применить редактируемый реестр в разделе или детали требуется выполнить следующие действия:
1. Создать расширяющую схему страницы реестра, в которой нужно в качестве родительских классов нужно испльзовать класс представления Terrasoft.view.BaseEditGridPage и класс контроллера Terrasoft.controller.BaseEditGridPage.
2. В представлении для свойства grid указать набор редактируемых колонок, используя свойство editColumns.
Пример использования
Пример кода реализации представления и контроллера:
// Загруженные данные для страницы. Terrasoft.LastLoadedPageData = { controllerName: "ActivitySKUGridPage.Controller", viewXType: "activityskugridpageview" }; // Хранилище данных, отображаемых контроллером в представлении. Ext.define("ActivitySKUGridPage.Store", { extend: "Terrasoft.store.BaseStore", config: { model: "ActivitySKU", controller: "ActivitySKUGridPage.Controller" } }); // Представление. Ext.define("ActivitySKUGridPage.View", { extend: "Terrasoft.view.BaseEditGridPage", xtype: "activityskugridpageview", config: { id: "ActivitySKUGridPage", grid: { editColumns: [ { name: "Balance" }, { name: "Presence" } ], store: "ActivitySKUGridPage.Store" } } }); // Контроллер модели представления. Ext.define("ActivitySKUGridPage.Controller", { extend: "Terrasoft.controller.BaseEditGridPage", statics: { Model: ActivitySKU }, config: { refs: { view: "#ActivitySKUGridPage" } } });
В схеме настройки соответствующего раздела или детали (обычно это схема, название которой заканчивается на ModuleConfig — подробнее см. в статье "Как добавить пользовательский раздел в мобильное приложение") для реестра нужно указать те же редактируемые колонки, которые должны попасть в выборку данных. Для этого используется метод addColumns() класса Terrasoft.sdk.GridPage:
Terrasoft.sdk.GridPage.addColumns(skuModelName, ["Balance", "Presence"]);
В результате выполнения описанных действий деталь будет выглядеть так, как показано на рисунке 1.
Рис. 1. — Редактируемый реестр детали [SKU Monitoring]