SAPUI5 odata 绑定 table 与控制器中的输入参数

SAPUI5 odata bind table with input parameters in controller

我需要通过绑定到网格的 Odata 将动态值输入参数传递给计算视图 table。我可以使用以下语法从 Odata 获取计算视图结果:

...odata/SERVICE.xsodata/DataSetParameters(P_END_DATE=datetime'2013/07/10',P_START_DATE=datetime'2013/07/03')/Results?$format=json

我在控制器中使用以下代码绑定网格table(日期在实际应用中是动态的)

var gridTable = _this.getView().byId(gridName);
gridTable.setModel(oModel);
gridTable.bindRows("DataSet(P_END_DATE=datetime\'2013/07/10\',P_START_DATE=datetime\'2013/07/03\')", null, null, aFilters);

在运行时出现以下错误

No key property 'P_END_DATE' exists in type...No key property 'P_END_DATE' exists in type ...Collection 'DataSet' is not directly accessible....Collection 'DataSet' is not directly accessible.

谁能帮我知道从 odata 绑定传递参数的正确语法是什么?

您公开的 ODATA 集合将在 /Results 可用,不能直接使用 /DataSet 访问。

需要 NavigationProperty 才能从参数化调用中检索结果。 所以你必须改变你的绑定路径到这个

DataSetParameters(param1=value,param2=value)/Results

控制器代码gridTable.bindRows("DataSetParameters(P_END_DATE=datetime\'2013/07/10\',P_START_DATE=datetime\'2013/07/03\')/Results", null, null, aFilters);