Hi All,
I want to convert flat oData to a tree-structured array of a data. As an example I took this : javascript - SAPUI5 create JSON for TreeTable / empty rows - Stack Overflow
Code :
var oData = new sap.ui.model.odata.ODataModel("http://52.16.73.119:8000/sizegrid/ztest/services/cartons.xsodata/", true);
oData.read("Cartons/", null, null, false,
function(oData, oResponse){
for (var i = 0; i < 3; i++) {
var key = 'SPORTS_CODE' + oData.results[i].SPORTS_CODE;
flat[key] = oData.results[i];
flat[key].__metadata = "";
}
for (var i in flat) {
flat[i].children = [];
}
for (var i in flat) {
var parentkey = 'SPORTS_CODE' + flat[i].SPORTS_CODE;
if (flat[parentkey]) {
flat[parentkey].children.push(flat[i]);
}
}
right after the push(flat[i]) statement, I get nested array of data into array flat. And that is nested to infinity :
Seems I'm doing something totally wrong with array, but can't figure out what. Any help, please ?
What I wanted to achieve, as actually a 2-level data structure with the child node = parent node.
Thanks !