SAP Odata实现方式

ABAP开发OData服务主要有以下几种实现方式,根据不同场景选择适用方法:

  1. SEGW事务码手动开发

    • 创建项目:SEGW中新建项目,定义Entity Types和Entity Sets
    • 定义数据模型:通过右键添加Import->DDIC Structure关联数据库表
    • 实现方法:在Data Provider Class(DPC)中重写方法如GET_ENTITYSET
    METHOD /iwbep/if_mgw_appl_srv_runtime~get_entityset.
      SELECT * FROM sflight INTO TABLE et_entityset.
    ENDMETHOD.
    

    • 注册服务:事务码/n/IWFND/MAINT_SERVICE激活服务
    • 测试服务:通过postman 或者sap 自带的segw client进行测试
  2. CDS视图注解方式

    • 创建CDS视图时添加OData注解:
    @OData.publish: true
    define view ZCDS_SFLIGHT as select from sflight {
      key carrid,
      key connid,
      fldate,
      price
    }
    

    • 自动生成服务时系统会创建对应$metadata
  3. RAP框架开发(ABAP 750+)

    • 使用ADT创建Business Service:
    @AccessControl.authorizationCheck: #CHECK
    @EndUserText.label: 'Flight Service'
    define service ZFLIGHT_SERVICE {
      expose ZRAP_FLIGHT as Flight;
    }
    

    • 通过行为定义实现CRUD操作
  4. RFC函数发布(适用于已有功能模块)

    • 在SEGW项目中使用Redefine->RFC/BOR Interface映射现有函数模块SAP Odata实现方式_第1张图片
    • 自动生成对应Entity和Complex Types

注:所有方式最终都需要在Gateway Hub完成服务激活和权限配置,可通过/IWFND/GW_CLIENT测试服务响应。

你可能感兴趣的:(sap,oneapi)