首页 > 其他分享 >什么是 SAP Fiori Elements 的 extensionAPI

什么是 SAP Fiori Elements 的 extensionAPI

时间:2023-08-13 13:22:11浏览次数:34  
标签:Elements 自定义 添加 Fiori 应用 extensionAPI SAP

在 SAP Fiori Elements 中,"extensionAPI" 是一种用于自定义和扩展 Fiori Elements 应用的强大工具。它提供了一组 API(应用程序编程接口),允许开发人员通过代码的方式对 Fiori Elements 应用进行定制和增强。借助 extensionAPI,开发人员可以在不影响标准 Fiori Elements 功能的基础上,根据具体的业务需求添加新的功能、修改现有行为或界面,从而实现更加个性化的用户体验。extensionAPI 是 Fiori Elements 框架提供的一种灵活且可扩展的开发方式,使开发人员能够在使用 Fiori Elements 开发应用的同时保持一定程度的灵活性和定制性。在接下来的内容中,我将详细介绍 extensionAPI 的概念、组成部分以及一个具体的示例来说明其用法和作用。

概念和组成部分:

  1. extensionAPI 的概念:extensionAPI 是 SAP Fiori Elements 框架中的一组 API,用于在开发应用时进行扩展和定制。它允许开发人员通过编写代码的方式,对 Fiori Elements 应用的行为、界面和功能进行增强和改进,从而满足特定的业务需求。

  2. API 集合:extensionAPI 包含多个 API,每个 API 都代表着一组特定的功能或操作。开发人员可以根据需求选择性地使用这些 API,实现对 Fiori Elements 应用的定制。

  3. 可用于不同层面:extensionAPI 可以用于不同层面的扩展。它可以在视图层级(View Level)和控制器层级(Controller Level)进行扩展。在视图层级,开发人员可以改变应用的外观和布局;在控制器层级,可以改变应用的行为和逻辑。

  4. 兼容性:通过使用 extensionAPI,开发人员可以保持应用的兼容性。因为 extensionAPI 允许对 Fiori Elements 应用进行扩展,而不需要修改原有的标准 Fiori Elements 代码,因此,应用的更新和升级将会更加方便和稳定。

extensionAPI 的示例:

为了更好地理解 extensionAPI 的用法和作用,我们将创建一个简单的 Fiori Elements 应用,并使用 extensionAPI 对其进行扩展。假设我们有一个 "Employee"(员工)的业务场景,现在我们希望在 Fiori Elements 应用中添加一个自定义的按钮,点击该按钮后,可以弹出一个对话框,显示员工的特定信息。

步骤一:创建 Fiori Elements 应用

首先,我们需要创建一个基本的 Fiori Elements 应用。我们可以使用 SAP Web IDE 或者其他适用的开发工具来创建该应用,这里我们假设应用是基于 "Employee" 实体的 List Report 应用。在创建应用的过程中,我们选择 List Report 模板,并关联 "Employee" 实体。

步骤二:添加自定义按钮

  1. 在 Fiori Elements 应用的视图层级(View Level)中,我们需要在页面上添加一个自定义按钮。这里我们使用 extensionAPI 中的 "Header Facet" API,将按钮添加到应用的标题区域。

  2. 在应用的 "manifest.json" 文件中添加以下配置:

"extends": {
  "extensions": {
    "sap.ui.viewExtensions": {
      "sap.suite.ui.generic.template.ListReport.view.ListReport": {
        "HeaderFacet|standardHeaderExtension": {
          "className": "sap.ui.core.Fragment",
          "fragmentName": "my.custom.fragment",
          "type": "XML"
        }
      }
    }
  }
}

在上述配置中,我们使用 "sap.ui.viewExtensions" API 来扩展视图。我们将自定义的 Fragment 添加到 "HeaderFacet" 中,并将其作为标题区域的扩展。

步骤三:创建自定义 Fragment

接下来,我们需要创建自定义的 Fragment,该 Fragment 将包含我们所需的自定义按钮。在 SAP Web IDE 中,我们可以在应用的 "webapp" 文件夹下创建一个新的 "fragments" 文件夹,并在其中创建一个名为 "custom.fragment.xml" 的文件。在该文件中,我们添加以下代码:

<core:FragmentDefinition xmlns="sap.m" xmlns:core="sap.ui.core">
  <OverflowToolbarButton text="Show Details" press="onShowDetailsPress"/>
</core:FragmentDefinition>

在上述代码中,我们创建了一个 OverflowToolbarButton,该按钮的文本为 "Show Details",并绑定了一个 press 事件 "onShowDetailsPress"。

步骤四:添加事件处理逻辑

最后,我们需要在 Fiori Elements 应用的控制器层级(Controller Level)中添加事件处理逻辑,以响应自定义按钮的点击事件,并显示员工的特定信息。

在控制器中添加以下代码:

sap.ui.controller("my.app.controller.ListReport", {
  onShowDetailsPress: function (oEvent) {
    var oSelectedEmployee = oEvent.getSource().getBindingContext().getObject();
    // 可根据 oSelectedEmployee 中的员工信息显示员工的特定信息
    // 弹出对话框或进行其他逻辑处理
  }
});

在上述代码中,我们在控制器中定义了 "onShowDetailsPress" 方法,该方法在自定义按钮点击事件触发时被调用。我们通过获取按钮绑定的数据上下文,获取选中的员工信息,并根据员工信息进行相应的逻辑处理。

总结:

通过以上示例,我们可以看到 extensionAPI 的用法和作用。通过使用 extensionAPI,我们可以在 Fiori Elements 应用中轻松地添加自定义的功能。

标签:Elements,自定义,添加,Fiori,应用,extensionAPI,SAP
From: https://www.cnblogs.com/sap-jerry/p/17626452.html

相关文章

  • Fiori Elements 应用里的 Object Page 应用
    当谈到SAPFioriElements应用中的"ObjectPage",它是一种用于展示单个业务对象的详细信息的现代化、可自定义的应用类型。ObjectPage旨在提供一种简化的开发方法,使开发人员能够快速创建符合SAPFiori用户体验标准的详细信息页面。该应用类型通过可配置的方式,结合了字段布局......
  • 如何找到 SAP Fiori Elements 应用某个字段显示值具体的数据源试读版
    笔者将自己在SAP领域16年(2007~2023)的SAPUI5(Fiori)和OData开发的技术沉淀,进行了系统的归纳和总结,分别写成了三套由浅入深的学习教程,收到了不错的反响:零基础快速学习ABAP一套适合SAPUI5开发人员循序渐进的学习教程SAPOData开发实战教程-从入门到提高这三套......
  • SAP CDS view 里的 COALESCE 函数
    在SAPABAPCDS(CoreDataServices)View中,COALESCE函数是用于处理NULL值的一种功能。COALESCE函数接受多个参数,并返回第一个非NULL值参数。这意味着如果第一个参数不为NULL,则返回第一个参数的值;如果第一个参数为NULL,则返回第二个参数的值;以此类推,直到找到第一个非NU......
  • SAP CDS view 里的 currency_conversion 功能介绍
    SAPABAPCDSView的currency_conversion函数是一种用于在CDS(CoreDataServices)视图中执行货币转换的功能。在SAP系统中,经常需要在不同货币之间进行转换,以便在报表和分析中展示一致的货币金额。currency_conversion函数允许在CDS视图中定义货币转换规则,以便在查询结果中将数值......
  • 如何修改 Fiori Elements 工程包含的本地注解(annotations)文件试读版
    本教程前一篇文章:8.如何找到SAPFioriElements应用某个字段显示值具体的数据源,笔者试图解答我的知识星球里一个朋友的提问:在WebIde(SAPUI版本1.97.0)生成FioriElements的Overviewpage并发布后,再次在消费视图中修改UI注解后,本地运行该Overviewpage应用发现页面已经变动,......
  • 因为 SAP UI5 版本升级引起的问题又一例 - 如何分析问题根源
    本教程之前的文章,我们介绍了SAPUI5库文件版本相关的知识:SAPUI5应用开发教程之八十四-如何指定SAPUI5应用程序基于某个特定的版本运行同样一份源代码,使用不同的SAPUI5版本加载,行为可能会有所差异:SAPUI5应用开发教程之一百一十八-如何分析因为SAPUI5版本......
  • SAP Fiori Elements 应用里的 ui5.yaml 文件详解试读版
    本教程第4篇文章,我们介绍了本地启动SAPFioriElements应用的三种模式。4.SAPFioriElements本地应用启动的三种模式辨析以默认方式即命令行yarnstart启动之后,项目文件夹里的ui5.yaml文件会默认被加载并解析。ui5.yaml这个文件,在本地开发FreestyleUI5时也会......
  • SAP UI5 中的 sap-fe-mockserver
    SAPUI5是一种用于构建现代Web应用程序的开发框架,它是SAP(Systems,Applications,andProductsinDataProcessing)公司推出的一种前端技术。它提供了丰富的控件库、MVC(Model-View-Controller)架构模式、数据绑定、主题定制等功能,帮助开发人员构建直观、高度可定制且易......
  • SAP Fiori Elements 应用里的 ui5-local.yaml
    SAPFioriElements是SAP的一种开发框架,用于快速构建SAPFiori应用程序。SAPFioriElements应用程序的一个重要方面是模拟服务器(mockserver),它允许在本地开发环境中模拟OData服务,以便在没有真实后端服务的情况下进行开发和测试。ui5-local.yaml文件用于配置本地开发环境......
  • HarmonyOS/OpenHarmony应用开发-ArkTSAPI系统能力SystemCapability列表
    SysCap,全称SystemCapability,即系统能力,指操作系统中每一个相对独立的特性。开发者使用某个接口进行开发前,建议先阅读系统能力使用说明,了解Syscap的定义和使用指导。说明当前列表枚举出3.1Beta版本中支持的系统能力。开发者可以在SDK中通过phone.json文件查询。SystemCapability.Ar......