Доброго дня
В мене винникла проблема в роботі з Terrasoft.Grid
Я створив свій окремий модуль, в ньому описав сві грід.
Заповнюю його так
function loadGridData(scope) {
var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {
rootSchemaName: "Product"
});
esq.addColumn("Id");
esq.addColumn("Name");
esq.addColumn("UsrFloor");
esq.getEntityCollection(function(response) {
var newCollection = Ext.create("Terrasoft.Collection");
var data = response.collection.collection.items;
Terrasoft.each(data, function (item, key) {
var model = Ext.create("Terrasoft.BaseViewModel", {
rowConfig: {
Id: {
columnPath: "Id",
dataValueType: Terrasoft.DataValueType.GUID
},
Name: {
columnPath: "Name",
dataValueType: Terrasoft.DataValueType.TEXT
},
UsrFloor: {
columnPath: "UsrFloor",
dataValueType: Terrasoft.DataValueType.INTEGER
}
},
values: {
Id: item.values.Id,
Name: item.values.Name,
UsrFloor: item.values.UsrFloor
}
});
newCollection.add(item.values.Id, item);
}, this);
var gridData = scope.get("gridData");
gridData.loadAll(newCollection);
var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {
rootSchemaName: "Product"
});
esq.addColumn("Id");
esq.addColumn("Name");
esq.addColumn("UsrFloor");
esq.getEntityCollection(function(response) {
var newCollection = Ext.create("Terrasoft.Collection");
var data = response.collection.collection.items;
Terrasoft.each(data, function (item, key) {
var model = Ext.create("Terrasoft.BaseViewModel", {
rowConfig: {
Id: {
columnPath: "Id",
dataValueType: Terrasoft.DataValueType.GUID
},
Name: {
columnPath: "Name",
dataValueType: Terrasoft.DataValueType.TEXT
},
UsrFloor: {
columnPath: "UsrFloor",
dataValueType: Terrasoft.DataValueType.INTEGER
}
},
values: {
Id: item.values.Id,
Name: item.values.Name,
UsrFloor: item.values.UsrFloor
}
});
newCollection.add(item.values.Id, item);
}, this);
var gridData = scope.get("gridData");
gridData.loadAll(newCollection);
При кліку на запис у мене пише що елемент з ключом не знайдений(img1.png)
Нравится
3 комментария
7 марта 2017 11:27
А в описании грида есть такой пункт?
"operation": "insert", "name": "DataGrid", ... "values": { ... "primaryColumnName": "Id" ... }
7 марта 2017 11:38
Дякую
у мене чомусь стояв "Name"
В мене є такий описаний грід, я хочу зробити його у варіанті tiled
{ className: 'Terrasoft.Container', id: 'gridArea', selectors: { wrapEl: '#gridArea' }, classes: { wrapClassName: ['container-spacing'] }, items: [ { className: 'Terrasoft.Grid', type: 'tiled', primaryColumnName: 'Id', activeRow: { bindTo: 'activeRowId' }, captionsConfig: [ { cols: 2, name: 'Етаж' }, { cols: 12, name: 'Название' } ], columnsConfig: [ [ { row: 0, cols: 2, key: [ { name: { bindTo: 'UsrFloor' }, type: 'title' } ] }, { row: 1, cols: 12, key: [ { name: { bindTo: 'Name' }, type: 'title' } ] } ] ], isEmpty: { bindTo: 'gridEmpty' }, collection: { bindTo: 'gridData' }, activeRowAction: { bindTo: 'onActiveRowSelect' }, activeRowActions: [ { className: 'Terrasoft.Button', style: Terrasoft.controls.ButtonEnums.style.BLUE, caption: 'Отркыть', tag: 'View' }, { className: 'Terrasoft.Button', style: Terrasoft.controls.ButtonEnums.style.BLUE, caption: '5', tag: 'Edit' }, { className: 'Terrasoft.Button', style: Terrasoft.controls.ButtonEnums.style.GREY, caption: '6', tag: 'Delete' } ] } ] }
Але в мене підписи колонок так і не проставляються, самі значення(img2)
7 марта 2017 14:00
я так понимаю надо прописать tiledConfig. Что-то наподобие:
"tiledConfig": { "name": "DataGridTiledConfig", "grid": { "columns": 24, "rows": 1 }, "items": [ { "name": "UsrFloorGridColumn", "bindTo": "UsrFloor", "caption": "Этаж", "captionConfig": { "visible": true }, "position": { "row": 1, "column": 1, "colSpan": 12 }, "type": "text" }, { "name": "NameGridColumn", "bindTo": "Name", "caption": "Название", "captionConfig": { "visible": true }, "position": { "row": 1, "column": 12, "colSpan": 12 }, "type": "title" }] }
Не уверен однако насчёт colspan. Вроде где-то слышал, что обязательно должно быть 24 заполненные яйчейки
upd. немного подправил конфиг на основе того, что возвращает GridSettingsChanged при конфигурации грида пользователем
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать