Odata连接但无法获取数据

时间:2017-07-13 13:29:32

标签: odata sapui5

我正在尝试开发一个连接到sap并收集一些数据的sapui应用程序,这是我的代码,Extracted request part。

var sServiceUrl = "http://isttst5007.unilever.com:8000/sap/opu/odata/sap/ZSNAP_BEG_SRV";
    var oModel = new sap.ui.model.odata.ODataModel(sServiceUrl, true);

    var oJsonModel = new sap.ui.model.json.JSONModel();

    oModel.read("/DumpsetSet?", null, null, true, function (oData, repsonse) {
        oJsonModel.setData(oData);
    });
    sap.ui.getCore().setModel(oJsonModel)

    console.log(oJsonModel.getProperty("/d/results"));

它连接服务器并询问用户名,密码。但是它无法收集数据。

1 个答案:

答案 0 :(得分:0)

读取是异步任务这一事实可能会导致问题,即当您执行console.log时,模型尚未填充数据。 你能尝试在read函数的成功函数里面做console.log吗? 如果显示数据,则异步任务导致"问题"。

var sServiceUrl = "../sap/opu/odata/sap/ZSNAP_BEG_SRV";
var oModel = new sap.ui.model.odata.ODataModel(sServiceUrl, true);

var oJsonModel = new sap.ui.model.json.JSONModel();

oModel.read("/DumpsetSet?", null, null, true, function (oData, repsonse) {
    oJsonModel.setData(oData);
    // Here the JSON Model is filled with the right data
    sap.ui.getCore().setModel(oJsonModel)
    console.log(oJsonModel.getProperty("/d/results"));
});