如何将oModel数据绑定到表

2020-08-17 14:32发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我试图将JsonMode...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我试图将JsonModel和OData的数据绑定到视图中的表,但是无法在Listitems中显示要显示的数据。

希望你能帮助我。

感谢和问候。

周杰伦

那是我的代码:

控制器:

 var zielTable = this.byId(" table_ziele");
                 newModel.read("/img/LAGPSet",{
                     过滤器:oFilter,
                     成功:功能(oData,响应){
                        //创建JSON模型
                         var oODataJSONModel = new sap.ui.model.json.JSONModel();
                        //将odata JSON设置为JSON模型的数据
                         oODataJSONModel.setData(oData);
                         sap.ui.getCore()。setModel(oODataJSONModel," lagpModel");
                         zielTable.setModel(oODataJSONModel," lagpmodel");
                     },


 视图:

 
                
                 

                 <列>
                     
                         
                     
                         
                     

                 <项目>
                     
                         <单元格>
                             
                             
                         
                     
模型: oData:{…} 结果:(13)[…] 0:{…} 1:{…} 2:{…} 3:{…} 4:{…} 5:{…} 6:{…} 7:{…} 8:{…} 9:{…} 10:{…} 11:{…} 12:{…}
付费偷看设置
发送
6条回答
骆驼绵羊
1楼 · 2020-08-17 14:41.采纳回答

要回答您的问题,您还需要在列表项中的属性中使用模型名称。 像这样:

 
                         <单元格>
                             
                             
                         
                      
悻福寶寶
2楼-- · 2020-08-17 14:50

嗨,Boghyon,

我在ODataModel.read中搜索了有关过滤器的信息,并在堆栈溢出时找到了一个带有答案的问题,他们使用JSONModel。 我应该改用什么呢?

My梦
3楼-- · 2020-08-17 15:00

你好@Jay Niclas Kiefer,

您可能已经将OData直接绑定到表,想要将ODataModel响应进一步转换为JSONModel并将其绑定到表的任何特定原因吗?

但是,在表项聚合中,应该使用命名模型来绑定属性

请参阅以下内容:

<文本text =" {lagpmodel> Lgpla}"/>

此致

Punith

暮风yp
4楼-- · 2020-08-17 15:04

如果过滤器是静态的,则可以直接在视图的xml中定义它,例如以下答案: https://stackoverflow.com/questions/36794281/correct-usage-for-filters-when-binding-items-via -xmlview

软件心理学工程师
5楼-- · 2020-08-17 14:52

您只需要ODataModel。

 <表id =" table_ziele"
   items =" {
     路径:"/img/LAGPSet",
     分类器:{
       路径:" Lgpla",
       降序:假
     }
   }"
   growth =" true"
   growthScrollToLoad =" true">
   <列>
     <!-...->
   
   
     
     
   
  

ODataListBinding将自动为您获取实体。 绝对不需要使用ODataModel.read手动读取并使用中间的JSONModel。 这是一种反模式,将导致使用ODataModel(服务器端模型)已经提供的客户端模型(JSONModel)重新实现所有功能。 不要走这条路。 不幸的是,文档对此并不十分清楚。

可以根据需要将过滤器添加到列表绑定中,以静态方式在XML视图中或动态添加到onInit或Controller中的其他处理程序中。 请参阅以下示例:

小熊yu生菜
6楼-- · 2020-08-17 15:02

> 我应该改为使用?

在下面添加了一些示例链接的答案。

> 找到了一个带有堆栈溢出答案的问题

您能告诉我们那是哪个答案吗? 也许我可以用注释来编辑该答案,以告知其他读者ODataModel.read通常不是正确的方法

一周热门 更多>