如何在 SAP Fiori Elements 应用的 manifest.json 里定义注解

简介: 如何在 SAP Fiori Elements 应用的 manifest.json 里定义注解

SAP Fiori Elements 应用中,manifest.json 文件是应用的主要配置文件,其中定义了应用的元数据、模型、服务等信息。其中,dataSources 区域负责描述应用使用的数据源,比如 OData 服务或者其他类型的后端服务。在 dataSources 区域的 settings 字段中,我们可以定义 annotations,它们是一种描述 OData 服务元数据的方式,可以增强服务的语义,并且可以驱动 UI 自动生成。


Annotations 是 SAP Fiori Elements 中的一个重要概念。它们提供了一种声明式的方式来定义 UI 的各种特性,包括但不限于字段的显示方式、排序、过滤等。

具体来说,annotations 可以定义:

  • 实体类型的一些属性,如标签、文本、提示等。
  • 实体类型的行为,如可创建、可更新、可删除等。
  • 实体类型的 UI 表现形式,如表格、表单、列表等。
  • 实体类型的关系,如导航属性、关联等。


在 dataSources 的 settings 中定义 annotations 的方式大概如下:

"dataSources": {
    "mainService": {
        "uri": "/sap/opu/odata/sap/ZDEMO_C_SALESORDERITEM_CDS/",
        "type": "OData",
        "settings": {
            "annotations": ["annotations1", "annotations2"]
        }
    },
    "annotations1": {
        "uri": "/sap/opu/odata/IWFND/CATALOGSERVICE;v=2;mo/Annotations(TechnicalName='ZDEMO_ANNO_MDL',Version='0001')/$value",
        "type": "ODataAnnotation"
    },
    "annotations2": {
        "uri": "/sap/opu/odata/IWFND/CATALOGSERVICE;v=2;mo/Annotations(TechnicalName='ZDEMO_ANNO_UI',Version='0001')/$value",
        "type": "ODataAnnotation"
    }
}


在上述示例中,我们定义了两个 annotations,分别叫做 “annotations1” 和 “annotations2”,它们分别对应着两个 ODataAnnotation 类型的数据源这两个数据源指向的是两个不同的 annotation 文件。这些 annotation 文件被用来描述 “mainService” 数据源(即 OData 服务)的元数据。


例如,我们可以在 annotation 文件中定义一个实体类型的标签,如下所示:

<Annotations Target="ZDEMO_C_SALESORDERITEM_CDS.SalesOrderItem">
    <Annotation Term="com.sap.vocabularies.Common.v1.Label" String="Sales Order Item"/>
</Annotations>


这段代码定义了 SalesOrderItem 实体类型的标签为 “Sales Order Item”。在 Fiori Elements 应用的 UI 中,这个标签将被用作实体类型的显示名称。


通过这种方式,我们可以通过 annotations 定义出复杂的业务逻辑和用户界面,而无需编写大量的前端代码。这大大提高了开发效率,降低了开发难度,使得开发者可以将更多的精力放在业务逻辑的实现上,而不是 UI 的编写上。


相关文章
|
6月前
|
数据库 API
启用SAP Fiori之前的一些注意事项
启用SAP Fiori之前的一些注意事项
|
3月前
|
JSON API 网络架构
【Azure 媒体服务】使用编码预设文件(Preset.json)来自定义编码任务 -- 创建视频缩略图
【Azure 媒体服务】使用编码预设文件(Preset.json)来自定义编码任务 -- 创建视频缩略图
|
3月前
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
3月前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
74 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
3月前
|
JSON Android开发 数据格式
Android c++ core guideline checker 应用问题之JSON compilation database的定义如何解决
Android c++ core guideline checker 应用问题之JSON compilation database的定义如何解决
|
3月前
数字化核心构建问题之SAP为应用软件扎根客户打基础如何解决
数字化核心构建问题之SAP为应用软件扎根客户打基础如何解决
24 0
|
4月前
|
JSON 数据格式
MysbatisPlus-核心功能-IService开发基础业务接口,MysbatisPlus_Restful风格,新增@RequestBody指定是为了接收Json数据的,使用swagger必须注解
MysbatisPlus-核心功能-IService开发基础业务接口,MysbatisPlus_Restful风格,新增@RequestBody指定是为了接收Json数据的,使用swagger必须注解
|
6月前
|
JavaScript 前端开发
试读版:如何找出 SAP 标准 Fiori 应用某个按钮点击后执行的 JavaScript 源代码
试读版:如何找出 SAP 标准 Fiori 应用某个按钮点击后执行的 JavaScript 源代码
关于 SAP ABAP OData 服务如何实现 Deep Insert 场景 - SAP 应用的标准行为试读版
关于 SAP ABAP OData 服务如何实现 Deep Insert 场景 - SAP 应用的标准行为试读版
SAP UI5 Link 控件的使用方法介绍 - 后续学习 Fiori Elements Smart Link 的基础试读版
SAP UI5 Link 控件的使用方法介绍 - 后续学习 Fiori Elements Smart Link 的基础试读版