Hi Maksin,
Here is my code for preparing table with some configured logic,
| onSelect: function(oEvent) | |
| { | |
| debugger; |
if(oEvent){
| selectedLevel = sap.ui.getCore().getModel('amlevel').getProperty(oEvent.getSource()._aSelectedPaths[0]); |
}
| aColumnData = []; | ||||
| aData = []; | ||||
| selectedLevel.KEYS.forEach(function(d){obj={};obj.FIELDNAME=d.FIELDNAME;obj.SCRTEXT_M=d.SCRTEXT_M;aColumnData.push(obj)}) | ||||
| var obj2 = {FIELDNAME: 'Description',SCRTEXT_M: 'Description'}; | ||||
| aColumnData.push(obj2); | ||||
| sap.ui.getCore().getModel('mainModel').oData.MaintenanceLevels.forEach(function(d){ | ||||
| if(d.MaintenanceLevel===selectedLevel.MAINTENANCELEVEL && d.Updkz !=='D') | ||||
| { | ||||
| debugger; | ||||
| aData.push(d); | ||||
| } | ||||
| }) | ||||
| debugger; | ||||
| var oModel23 = new sap.ui.model.json.JSONModel(); | ||||
| oModel23.setData({ | ||||
| columns : aColumnData, | ||||
| rows : aData | ||||
| }); | ||||
| var oTable = this.getView().byId('Maintenanclevel'); | ||||
| oTable.setModel(oModel23); | ||||
| oTable.bindAggregation("columns", "/columns", function(index, context) { | ||||
| var sColumnId = context.getObject().FIELDNAME; | ||||
| var sColumnname = context.getObject().SCRTEXT_M; |
return new sap.m.Column({
header: new sap.m.Label({text: sColumnname}),
minScreenWidth :"Tablet",
| demandPopin:true |
});
});
that=this;
oTable.bindItems("/rows", function(index, context) {
var obj = context.getObject();
var row = new sap.m.ColumnListItem();
for(var k in aColumnData) {
var x = aColumnData[k].FIELDNAME;
row.addCell(new sap.m.Text({text : obj[x]}));
}
return row;
});
oTable.setMode(sap.m.ListMode.Delete);
oTable.attachDelete(function(oEvent){that.deleteRow(oEvent)},that);
Thanks,
Kotesh.
| }, |