使用 ABAP 代码给 OData 元数据增添注解的一些例子

举报
汪子熙 发表于 2023/02/03 08:36:51 2023/02/03
【摘要】 最近有读者向我咨询,关于当系统在 SAP NetWeaver 740 之上运行时,如何向 OData 服务添加注解(annotation)。 虽然使用 SAP NetWeaver 750 及更高版本,可以在 CDS DDL 源代码中添加注解,然而 SAP NetWeaver 740 没有此类支持。

最近有读者向我咨询,关于当系统在 SAP NetWeaver 740 之上运行时,如何向 OData 服务添加注解(annotation)。

虽然使用 SAP NetWeaver 750 及更高版本,可以在 CDS DDL 源代码中添加注解,然而 SAP NetWeaver 740 没有此类支持。

尽管如此,如果客户和合作伙伴正在使用使用 CDS 视图作为映射数据源(mapped data sources)的服务实施,则他们可以利用 CDS 视图作为 SAP NetWeaver 740 中已有的 OData 服务的数据源。

因此,可以开始在 740 中为 OData 服务构建 CDS 视图。要在 740 后台系统添加对注释的支持,可以使用基于代码的实现。

本文涉及到的场景用例是希望基于 SAP NetWeaver 740 构建 OData 服务的客户和合作伙伴,并且该系统不支持 CDS 视图中的注释。

升级到 SAP NetWeaver 750 或更高版本时,您也可以将实施转移到 CDS 中。

以下屏幕截图显示了生成的 SAP Fiori 应用程序的第一个屏幕,该应用程序基于来自 Fiori Elements(也称为 Smart Template)的列表报告页面和对象页面。

在实体集 SalesOrderSet 中,我们默认显示列 Salesorder、Customer 和 Gross amount 以及 Currency。 此列表的标题名为 SalesOrders。

单击列表条目时,我们使用导航属性 ToItems,所选销售订单的详细信息显示在对象页面上。

OData 请求可能在浏览器中可见的 URL 中包含机密数据。 如果此类数据不应出现在 URL 中,我们建议改用批量请求。 您可以使用新的 SAP 注释 sap:use-batch=“true”(元数据文档)强制生成批请求。 为此,可以使用一种方法:model->set_use_batch(abap_true)。 然后,元数据文档将在实体容器(entity container)中包含 SAP 注释 sap:use-batch=“true”。

元数据中生成的注解:

<EntityContainer Name="TEST_SRV_Entities" sap:use-batch="true"/>
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。