Здравствуйте коллеги
как мне отобразить в *Section резултата запроса из функции
getFields
define('UsrEshDublSection', ['ext-base', 'terrasoft', 'sandbox', 'UsrEshDubl', 'UsrEshDublSectionStructure', 'UsrEshDublSectionResources'], function(Ext, Terrasoft, sandbox, entitySchema, structure, resources) { structure.userCode = function() { this.entitySchema = entitySchema; this.name = 'UsrEshDublSectionViewModel'; this.columnsConfig = [ [ { cols: 24, key: [ { name: { bindTo: 'Name' }, type: 'title' } ] } ] ]; this.loadedColumns = [{ columnPath: 'Id' }, { columnPath: 'Name' }]; function getActions() { var actions = []; actions.push({ caption: "", className: "Terrasoft.MenuSeparator" }, { caption: resources.localizableStrings.Zagolovok, methodName: "changeStatus" }); return actions; } this.actions = getActions(); this.methods.loadGridCollectionItems = function(items) { var collection = this.get("gridData"); if (items && items.collection.length === 0) { this.showInformationDialog(lcz.DataNotFound); } collection.loadAll(items); }; this.methods.changeStatus = function() { var currScope = this; var controls = { FAMILIYA: { type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: "FAMILIYA", caption: resources.localizableStrings.Familiya, //columnPath: "ESStatus", dataValueType: Terrasoft.DataValueType.TEXT, visible: true }, IMYA: { type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: "IMYA", caption: resources.localizableStrings.Imya, //columnPath: "ESStatus", dataValueType: Terrasoft.DataValueType.TEXT, visible: true }, OTCHESTVO: { type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: "OTCHESTVO", caption: resources.localizableStrings.Otchestvo, //columnPath: "ESStatus", dataValueType: Terrasoft.DataValueType.TEXT, visible: true }, BORN: { type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: "BORN", caption: resources.localizableStrings.Born, //columnPath: "ESStatus", dataValueType: Terrasoft.DataValueType.DATE, visible: true }, SERIALPASS: { type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: "SERIALPASS", caption: resources.localizableStrings.SerialPass, //columnPath: "ESStatus", dataValueType: Terrasoft.DataValueType.TEXT, visible: true }, NUMBERPASS: { type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: "NUMBERPASS", caption: resources.localizableStrings.NumberPass, //columnPath: "ESStatus", dataValueType: Terrasoft.DataValueType.INTEGER, visible: true } }; function nameInputBoxHandler(returnCode, controlData) { if (returnCode === "ok") { var currScope = this; var f = controlData.FAMILIYA.value; getFields(f); } } function getFields(input) { var lName=[]; lName.push(input); var esq = Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "UsrEshDubl" }); esq.addColumn("Name"); esq.filters.addItem(Terrasoft.createColumnInFilterWithParameters("Name", lName)); esq.getEntityCollection(function(response) { if (response && response.success && response.collection) { debugger; var items = response.collection.getItems(); for(var j=0; j<items.length;++j){ //Как удалять старый результат //Как добавлять новый результат } } }, this); } Terrasoft.utils.inputBox( resources.localizableStrings.Zagolovok, nameInputBoxHandler, ["ok", "cancel"], this, controls, { defaultButton: 0, classes: { coverClass: ["cover-calss1", "cover-calss2"], captionClass: ["caption-calss1", "caption-calss2"] } } ); }; }; return structure; });
Нравится
3 комментария
Лучший ответ
13 марта 2019 11:06
Добрый день!
Так понимаю, в метод getFields нужно вставить вызов метода loadGridCollectionItems и передать ему на вход полученный из БД список
13 марта 2019 11:06
Добрый день!
Так понимаю, в метод getFields нужно вставить вызов метода loadGridCollectionItems и передать ему на вход полученный из БД список
18 марта 2019 05:26
у меня еще один вопрос, как загружать пустую UsrEshDublSection?
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать