CDS视图通过 SEGW 和 /IWFND/MAINT_SERVICE 发布OData服务

CDS视图通过 SEGW 和 /IWFND/MAINT_SERVICE 发布OData服务


通过SEGW创建EntitySet 和 EntityType,然后在/IWFND/MAINT_SERVICE添加OData服务并发布

实现效果如下:

输入事务代码SEGW进入SAP Gateway Service Builder

点击创建按钮创建工程

右键Data Model–>Reference–>Data Source,通过该方式的好处就是在CDS View被修改的情况下,可以不用修改EntityTypes、EntitySets等,Gateway内容会参照该CDS View自动修改。

输入在eclipse创建的cds视图名,注意该cds需要设置主键,CDS View如下

@AbapCatalog.sqlViewName: 'YVH_WAERSVN'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: '货币搜索帮助'
define view YVH_WAERS as select distinct from tcurt {
    key waers,
    ltext
}where spras = '1'


添加成功后点击按钮生成Runtime Artificats

如果想要在后面实现OData的增删改功能,则需要进入YCL_YDEMO_DPC_EXP类中重定义

YVH_WAERS_CREATE_ENTITY、YVH_WAERS_DELETE_ENTITY、YVH_WAERS_UPDATE_ENTITY方法,如果只需要查询功能就不用管这些

在创建完Gateway之后输入事务代码 /n/IWFND/MAINT_SERVICE 进入Activate and Maintain Services点击按钮添加服务,如果SEGW和/IWFND/MAINT_SERVICE是同一个服务器,则选择Co-Deployed(联合部署),如果不是则在System Alias(系统别名)选择SEGW所在服务器名。

点击SAP Gateway Client进入Odata服务页面

设置Request URI

测试结果,状态码200则为成功

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是在 SAP ABAP 中使用 OData 过滤语句来过滤两个参数的示例代码,其中使用了 SEGW (SAP Gateway Service Builder) 来创建实体集合: 1. 在 SEGW 中创建实体集合 首先,在 SEGW 中创建一个实体集合,例如名为 ztest02Set 的实体集合,其中包含有关测试信息的字段,例如 Id 和 Ifno。 2. 在实体集合中添加查询方法 在实体集合中添加一个查询方法,例如名为 GetTestInfoByFilter 的方法,用于根据 Id 和 Ifno 这两个参数来过滤出符合条件的测试信息。 3. 在查询方法中添加过滤语句 在查询方法的源代码中,添加以下过滤语句来过滤两个参数: ``` lt_test_info = lt_test_info WHERE ( Id EQ @iv_id ) AND ( Ifno EQ @iv_ifno ). ``` 其中,lt_test_info 是包含所有测试信息的内部表,iv_id 和 iv_ifno 是输入参数,表示要过滤的 Id 和 Ifno。 4. 在前端应用中调用查询方法 在前端应用中,使用以下代码来调用查询方法并获取符合条件的测试信息: ``` var sUrl = "/sap/opu/odata/SAP/ZTEST01_SRV/GetTestInfoByFilter"; sUrl += "?$filter=Id eq '00000858' and Ifno eq 'KUZI'"; var oModel = new sap.ui.model.odata.ODataModel(sUrl, true); oModel.read("/ztest02Set", { success: function(oData) { // 处理返回的测试信息 } }); ``` 在上述代码中,我们使用 sap.ui.model.odata.ODataModel 类来创建 OData 模型,并使用 read 方法来调用 GetTestInfoByFilter 方法,并将过滤语句作为参数传递给 sUrl 变量。最后,我们使用 success 回调函数来处理返回的测试信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值