使用参数SAPUI5进行路由

时间:2018-11-12 09:31:38

标签: odata sapui5

在这里我使用OData服务在同一页面的icontabfilter之间导航时遇到问题。好吧,我有一个icontabfilter,其中包含来自odata服务的所有数据,并且在同一列表中,我有导航图标。

我需要的是当我进行onPress事件时,需要将一个图标选项卡路由并导航到同一页面上的另一个图标。另外,OData服务已从“ ProductHeadSet / ProductBOM”连接到。因此,当我单击数字f.e:ProductHeadSet中的12345 ID时,它应该将我路由到BOM表IconTab,它与ProductHeadSet链接并应显示与12345相关的信息。

Controller.js

string.Join

View.xml

var oListItem= this.getView().byId("BoMSet"); 
oListItem.bindItems({ 
    path : "invoice>/ProductHeadSet('12345')/ProductHead2BOM", 
    template : new sap.m.StandardListItem({ 
        title: "{invoice>BomNumber}", 
        description: "{invoice>Material}" 
    })
});

manifest.json

<List
id="BoMSet"
headerText="BoM"
items="{
    path: '/Products'
}">
    <items>
      <ObjectListItem
         intro="{invoice>Material}"
         title="{invoice>BomNumber}">
       </ObjectListItem>
    </items>

在此之后,我有点空白,因为我不确定在此之后如何才能满足需求。

已编辑:引起问题的代码。而且我已经尝试了两种方式都不起作用。

"invoice": {
        "dataSource": "invoiceRemote"

2。

 onItemSelected: function(oEvent) { 
             var oSelectedItem = oEvent.getSource(); 
             var oContext = oSelectedItem.getBindingContext("ProductHead2BOM"); 
             var sPath = oContext.getPath(); 
             var oinvoiceList = this.byId("BoMSet"); 
             oinvoiceList.bindElement({ path: sPath, model: "ProductHead2BOM" }); 
             }

路径:发票> / ProductHeadSet('12345')/ ProductHead2BOM我需要在新的iconTab上具有表视图。当我从第一个IconTab中的productHeadset中单击单个产品时,应将我导航到带有('12345')链接信息的新图标选项卡,以获取ProductHead2BOM的信息

感谢和赞赏!!!

1 个答案:

答案 0 :(得分:0)

我想在解释路线和导航之前,我想请您检查是否甚至需要在此处进行路线。答案是否定的,您不需要路由。

仅当您尝试显示与打开的视图不同的视图时才需要路由。

  

就您而言,正如您提到的,同一视图上有iconTab   这意味着oData模型可以绑定到视图,并且可以   整个访问。

我建议您检查一下名为see this error的东西,它可以解决将上下文绑定到一个iconTab或Table的问题。

希望这对您有帮助!