首页 > SAP > FIORI > SAP Web IDE学习UI5第三步—-第一个模板ODATA使用例子
2019
08-27

SAP Web IDE学习UI5第三步—-第一个模板ODATA使用例子

本文是在SAP WEB IDE安装完成后,第一个使用模板使用ODATA的程序,
请先确保学习UI5第一步SAP WEB IDE安装完成。

本使用的ODATA为ODATA官网提供的公司数据源,使用时不需要使用用户密码,地址为:https://services.odata.org/V2/Northwind/Northwind.svc/,此地址可以直接使用浏览器打开,也可以使用其它的数据源,比如SAP提供的https://sapes4.sapdevcenter.com/SAP/OPU/ODATA/IWFND/RMTSAMPLEFLIGHT/,但些地址的数据源使用打开里会提示用户登陆,用户需要先免费申请(SAP学习第一步—找一个自己的服务器–HANA)。

——————————————————————————————————————————

一、配置数据源代理域名(我理解的是此步主要解决ODATA数据源使用时的跨域名问题,如是网站与ODATA在同一域名下,此步可以不使用),打开目录C:\SAPWebIDE\config_master\service.destinations\destinations,新建立一个文件名northwind(注意此文件没有扩展名),使用事本打开并写如:

Description=northwind
Type=HTTP
TrustAll=true
Authentication=NoAuthentication
Name=northwind
ProxyType=Internet
URL=https\://services.odata.org
WebIDEUsage=odata_gen,odata_abap,ui5_execute_abap
WebIDESystem=northwind
WebIDEEnabled=true
sap-client=

生成如图:

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第1张  | 优通SAP



二、双击IDE程序目录中的orion.exe,执行,并用 Chrome浏览器打开地址:http://localhost:8090/webide/index.html,运行SAP WEB IDE;

三、使用模板创建一个ODATA的例子;
3.1点击File->New->Project from Template;

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第2张  | 优通SAP

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第3张  | 优通SAP

3.2 选择SAP Fiori Worklist Application;


3.3 输入项目名:ui5_test,并点击下一步;

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第4张  | 优通SAP

3.4 设置ODATA数据源,选择第一步配置的northwind,并输入地址:/V2/Northwind/Northwind.svc/ ,点击“Test”测试,正常会如图显示可以的数据;随便选择一下数据表,并点击下一步;

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第5张  | 优通SAP

3.4设置显示的内容页;在图中,选择使用Products,由于此数据源没有价格单位,所以Object Unit of Measure没选择,点击下一步完成向导。

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第6张  | 优通SAP

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第7张  | 优通SAP

、生成如图目录程序,点击运行,如是正常那就能打开内容,

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第8张  | 优通SAP



4.1正常运行后就能打开显示的内容了,但我下载的1.137版本运行后确报错如图(由于事后确认我使用其它的版本如上面生成的不会报错,1.130没问题,所以如你已成功运行不用看此部份内容)

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第9张  | 优通SAP



错误内容为:

{
        “requestUri”: “/V2/Northwind/Northwind.svc/$metadata?sap-documentation=heading”,
        “statusCode”: 404,
        “statusText”: “Not found: http://localhost:8090/file/yan252-OrionContent/ui5_test/V2/Northwind/Northwind.svc/$metadata”,
        “headers”: [],
        “body”: “<html>\n<head>\n<meta http-equiv=\”Content-Type\” content=\”text/html;charset=ISO-8859-1\”/>\n<title>Error 404 Not found: http://localhost:8090/file/yan252-OrionContent/ui5_test/V2/Northwind/Northwind.svc/$metadata</title>\n</head>\n<body>\n<h2>HTTP ERROR: 404</h2>\n<p>Problem accessing /V2/Northwind/Northwind.svc/$metadata. Reason:\n<pre>    Not found: http://localhost:8090/file/yan252-OrionContent/ui5_test/V2/Northwind/Northwind.svc/$metadata</pre></p>\n<hr /><i><small>Powered by Jetty://</small></i>\n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n                                                \n</body>\n</html>\n”
}

我也不知是什么原因导致的,后来发现生成的neo-app.json文件最后一段为:

    {
      “path”: “/webidedispatcher/destinations/northwind”,
      “target”: {
        “type”: “destination”,
        “name”: “northwind”
      },
      “description”: “northwind”
    }

而manifest.json文件的数据定义为:

  “dataSources”: {
                        “mainService”: {
                                “uri”: “/V2/Northwind/Northwind.svc/”,
                                “type”: “OData”,
                                “settings”: {
                                        “odataVersion”: “2.0”,
                                        “localUri”: “localService/metadata.xml”
                                }
                        }
                },

所以我把manifest.json中的
“uri”: “/V2/Northwind/Northwind.svc/”,
修改为
“uri”: “/webidedispatcher/destinations/northwind/V2/Northwind/Northwind.svc/”,
最后运行此程序,


就正常了,结果如图:

SAP Web IDE学习UI5第三步----第一个模板ODATA使用例子 - 第10张  | 优通SAP

最后编辑:
作者:yangsen
本站为个人博客网站,全由我个人维护,我从事SAP开发13年,其它ERP开发7年,基本都是零售行业。本站记录工作学习的过程, 有SAP相关询问专、兼职工作可随时联系我。 有网站相关的问题可直接在文章下方留言,或者联系我。 邮件:yan252@163.com给我。 QQ:415402519

留下一个回复

你的email不会被公开。