Sapui5:如果有oData参数,如何将oData服务绑定到SAPUI5表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sapui5:如果有oData参数,如何将oData服务绑定到SAPUI5表相关的知识,希望对你有一定的参考价值。

如何在使用OData $ expand参数时将oData服务绑定到SAPUI5表

<Table id="contactPickerTable"
          items="{path: 'modelPersons>/ContactSet',
          filters : [{path : 'Customer',operator : 'EQ',value1:'2035235403'}]
          parameters : {expand:'Address'}}"  
>
.....
<ObjectIdentifier 
      title="{modelPersons>Title}"
      text="{modelPersons>PersonId}" />

我知道上面列表绑定数据到一个表的例子是有效的。但是如果我的服务中有$ expand,那么如何在ObjectIdentifier中显示返回集合的属性?我的意思是什么是上下文路径?

服务器响应如下所示:

<entry>
<id></id>
<title type="text">PartnerSet('2010002791')</title>
<updated>2014-05-24T08:05:58Z</updated>
...
<link href="PartnerSet('2010002791')" rel="self" title="Partner"/>
<link href="PartnerSet('2010002791')/Address" rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Address" type="application/atom+xml;type=feed" title="Address">
<m:inline>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" >
<id>PartnerSet('2010002791')/Address</id>
<title type="text">AddressSet</title>
<updated>2014-05-24T08:05:58Z</updated>
<author>
<name/>
</author>
<link href="PartnerSet('2010002791')/Address" rel="self" title="AddressSet"/>
<entry>
<id></id>
<title type="text">AddressSet('')</title>
<updated>2014-05-24T08:05:58Z</updated>
...
<d:FirstName>DM LABO SARL</d:FirstName>
<d:Name>DIDIER MARTIN LABORATOIRE</d:Name>
<d:Name3/>
...
...

如何访问“名称”属性?

答案

尝试类似下面的内容,我假设地址有街道,州和国家,我把它们放在$ Select条件下限制返回的字段

<Table id="contactPickerTable"
       items="{
         path: 'modelPersons>/ContactSet',
         filters : [{ path: 'Customer', operator: 'EQ', value1: '2035235403' }]
         parameters: {
           expand: 'Address',
           select: 'Title,PersonId,Address/Street,Address/State,Address/Country'
         } 
       }">
...
<ObjectIdentifier
     title="{modelPersons>Title}"
     text="{modelPersons>PersonId}" />
     <Text
        text="{modelPersons>Address/Street}"/>
     <Text
        text="{modelPersons>Address/State}"/>
     <Text
        text="{modelPersons>Address/Country}"/>

JsBin例子:OData Expand and Select with XmlView

以上是关于Sapui5:如果有oData参数,如何将oData服务绑定到SAPUI5表的主要内容,如果未能解决你的问题,请参考以下文章

从OData Service到SAPUI5一站式开发指南(SAP FIORI全栈开发)

使用 and:false 条件 SAPUI5 过滤日期范围的 Odata 服务值

在 WebAPI 中使用 OData 时如何将 SelectExpandQueryOption 转换为 IQueryable<T>?

SAPUI5头像-显示图像(从后端流式传输)不起作用

浅谈 SAP UI5 OData 模型构造函数的输入参数

SAPUI5使用了哪些开源技术