Как привязать динамические данные к таблице в sapui5?

Я пытаюсь привязать динамические данные к таблице, созданной в xml. Но я не смог. Я не получаю никаких ошибок, но всегда показывает «Нет доступных данных». Вот что я пробовал.

App.view.xml: -

<sap.ui.layout:HorizontalLayout xmlns:sap.ui.layout="sap.ui.layout" id="table_layt">
    <sap.ui.layout:content>
        <Table noDataText="No Data Available" id="bud_table" class="table_layt">
            <items></items>
            <columns>
                <Column id="c1">
                <header><Label text="Account Description" id="aclab"/></header>
                </Column>
                <Column id="c2">
                <header><Label text="Actual" id="actlab"/></header>
                </Column>
                <Column id="c3">
                <header><Label text="Budget" id="budglab"/></header>
                </Column>
                <Column id="c4">
                <header>
                <Label text="Variance" id="valab"/></header>
                </Column>
            </columns>
        </Table>
</sap.ui.layout:content>

App.controller.js :-

var oTable = this.getView().byId("bud_table"); 
var oTemplate = new sap.m.ColumnListItem({
    cells:[
        new sap.m.Label({
        text:"{AccountDesc}"
        }),
        new sap.m.Text({
        text:"{AmtActFore}"
        }),
        new sap.m.Text({
        text:"{AmtBudget}"
        }),
        new sap.m.Text({
        text:"{AmtVariance}"
        })
        ]
});

oTable.bindItems("/root", oTemplate);

И мои данные выглядят так: -

данные

Объект {корень: массив [64]}

root: Array[64]

  0: Object

    AccountDesc: "blah"

    AccountNo: "blah"

    AmtActFore: "blah"

    AmtBudget: "blah"

    AmtVariance: "blah"

person Hari    schedule 16.06.2016    source источник


Ответы (1)


Я думаю, вам не хватает той части, где вы вводите данные в модель:

this.getView().setModel(
    new sap.ui.model.json.JSONModel({
        root: [{
            AccountDesc: "blah",
            AccountNo: "blah",
            AmtActFore: "blah",
            AmtBudget: "blah",
            AmtVariance: "blah"
        }]
    }));

Пожалуйста, обратитесь к этот JSBin для рабочего примера вашего кода, включая инициализацию модели часть.

person jpenninkhof    schedule 16.06.2016
comment
Да !! Большое спасибо !! Теперь, когда я добавил следующий код, он заработал!! var oTreeModel = new sap.ui.model.json.JSONModel(); oTreeModel.setData(data); oTable.setModel(oTreeModel); oTable.bindItems("/root",oTemplate); - person Hari; 16.06.2016
comment
Отличный Ял. Рад это слышать :) - person jpenninkhof; 16.06.2016