从SAP Web IDE中的两个不同系统访问OData服务

时间:2018-02-23 09:48:59

标签: sapui5 hana sap-web-ide

我在两个不同的系统上有两个OData服务,为此我在HCP中添加了目标,在 neo-aap.json 文件中添加了条目。

{
    "path": "/sap/opu/odata",
    "target": {
        "type": "destination",
        "name": "ABC",
        "entryPath": "/sap/opu/odata"
    },
    "description": "ABC"
}, {
    "path": "/sap/opu/odata",
    "target": {
        "type": "destination",
        "name": "XYZ",
        "entryPath": "/sap/opu/odata"
    },
    "description": "XYZ"
}

有了这个,我只能访问一个系统的服务,即ABC上的OData服务。当应用程序加载应用程序尝试加载第二个OData服务的命中元数据时,ABC显然不存在,因此失败。

如何在XYZ系统上访问OData服务?

2 个答案:

答案 0 :(得分:2)

如果'路径'是相同的,只有第一个匹配。为目的地设置不同的路径。 '路径' neo-app.json中的属性只是目的地的别名。使用您的配置,这意味着,无论何时在您的应用中,您都需要来自' / sap / opu / odata / ...'应用程序将使用您在Destination中配置的URL覆盖路径的这一部分。

做这样的事情:

{
  "path": "/ABC/sap/opu/odata",
  "target": {
     "type": "destination",
     "name": "ABC",
     "entryPath": "/sap/opu/odata"
  },
  "description": "ABC"
}, {
  "path": "/XYZ/sap/opu/odata",
  "target": {
     "type": "destination",
     "name": "XYZ",
     "entryPath": "/sap/opu/odata"
  },
  "description": "XYZ"
}

然后确保使用" / ABC / sap / opu / odata"或" / XYZ / sap / opu / odata"无论何时设置模型数据源。

答案 1 :(得分:1)

从我的角度来看,这是一个错误。 用于定位目的地的密钥是" path"值因此您将始终到达第一个目的地。 您可以通过将路径从/sap/opu/odata更改为/sap/opu/odata1来解决此问题 然后,在manifest.json中编辑dataSource:调整" uri"在您尝试指向第二条路径的任何模型上调整路径。

我已经写了here,并且正在努力让SAP改变这种行为。