在此使用简单HANA STUDIO 中创建的简单CDS来生成ODATA服务的过程,具体的HANA STUDIO 中创建CDS过程请参考:HANA STUDIO如何创建ABAP CDS
1.一、先在创建好CDS
创建CDS操作步骤参看: HANA STUDIO如何创建ABAP CDS
2.二、事务码SEGW创建ODATA 服务,
登陆SAP GUI 后,使用事务码SEGW,创建一个SAP Gateway Service Builder,在此定义为了ZTEST.
创建成功后,就生成了一个ODATA工程对像ZTEST,此工程中可引入多个表,或者多个定义的CDS,下面以引入前文创建的CDS为例。
3.三、引入CDS到ODATA中
1.在ZTEST工程下,“Odata Model”上点击右键,选择Reference->Data source,
2.在其中输入前文中创建的DDL Source名字:ZTEST01(与CDS同名)。
3.点击完成后,生成如图的CDS-Entity exposures
4.激活ODATA项目工程,点击“Generate Runtime Objects”,此步骤,一定要先选择工程项目(ZTEST),否则激活时会报错的。成功后如图。
4.四、把ODATA工作生成ODATA服务
1.运行事务码:/IWFND/MAINT_SERVICE 打开激活服务功能,如运行此事务码报错:“用户不能再登陆”,如图。可以在此事务码前面加/n,也就是:/N/IWFND/MAINT_SERVICE 来打开,或者直接在SE93中打开,或者把此事务码添加到收藏菜单中,就不会报错了。
2.打开后,点击添加服务
3.在此输入系统别名:LOCAL,技术服务名称,输入前面SEGW创建的工程名:ZTEST*,找到ZTEST_SRV服务,选择,并点击“添加所选服务”。
4.输入开发包,点击确认保存,
五、测试ODATA服务
1.前面操作后,服已生成,可进行测试,查看ODATA数据了,维护主界面中选择刚才生成的服务ZTEST_SRV,并点击“SAP Gateway 客户端”,
2.选择GET ,执行后,可看到如图的ODATA内容,
3.把地址修改成,/sap/opu/odata/sap/ZTEST_SRV/ZMEMBERSet?$format=json,可看到我们定义的视图中的数据了。
5.最后
后面可以
2.HANA STUDIO 创建CDS后直接生成ODATA服务:@OData.publish: true。
你好,参考你得例子,我这边在最后一步生成odata异常报错,
–
For backend administrators: use ADT feed reader “SAP Gateway Error Log” or run transaction /IWFND/ERROR_LOG on SAP Gateway hub system and search for entries with the timestamp above for more details
See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)
你需要用事务码:/IWFND/ERROR_LOG 去查看更多的错误提示,然后再处理。
非常感谢,已经在/IWFND/ERROR_LOG找到问题,是未激活SAP Gateway服务。
感谢,已经解决需要去激活SAP Gateway
添加服务完的时候,报错/IWFND/MED113,调用方法必填字段为初始值,后面就执行不了sapgateway,被灰掉了,LOG看不到错误,ST22也没有,能帮忙看下是怎么回事吗
没明白你意思,对这些东西,太新了,好多时候还是得自己研究,